For the record that works and should work as long as it is use'd before any modules whose their sleep needs to be overriden (from LanX's answer at Copy a builtin sub to a different name and then override):
package Override::Sleep;
# based on LanX's answer at https://perlmonks.org/?node_id=1215668
our $total_sleep_time = 0;
our $DEBUG = 0;
BEGIN {
my $oldsleep = \&CORE::sleep;
*CORE::GLOBAL::sleep = sub(;$) {
#$Override::Sleep::total_sleep_time += CORE::sleep($_[0]);
$Override::Sleep::total_sleep_time += $oldsleep->($_[0]);
if( $Override::Sleep::DEBUG ){
my $parent = ( caller(1) )[3] || "N/A";
print 'CORE::GLOBAL::sleep('.$_[0].") (called by $parent):
+ total sleep time is now ".$Override::Sleep::total_sleep_time." secon
+ds.\n";
}
};
}
1;
-
Are you posting in the right place? Check out Where do I post X? to know for sure.
-
Posts may use any of the Perl Monks Approved HTML tags. Currently these include the following:
<code> <a> <b> <big>
<blockquote> <br /> <dd>
<dl> <dt> <em> <font>
<h1> <h2> <h3> <h4>
<h5> <h6> <hr /> <i>
<li> <nbsp> <ol> <p>
<small> <strike> <strong>
<sub> <sup> <table>
<td> <th> <tr> <tt>
<u> <ul>
-
Snippets of code should be wrapped in
<code> tags not
<pre> tags. In fact, <pre>
tags should generally be avoided. If they must
be used, extreme care should be
taken to ensure that their contents do not
have long lines (<70 chars), in order to prevent
horizontal scrolling (and possible janitor
intervention).
-
Want more info? How to link
or How to display code and escape characters
are good places to start.
|