


Time::SoFar(3) User Contributed Perl Documentation Time::SoFar(3)


NNNNAAAAMMMMEEEE
       Time::SoFar - Perl module to calculate run time

SSSSYYYYNNNNOOOOPPPPSSSSIIIISSSS
           use Time::SoFar qw( runtime runinterval figuretimes );

           # [...] denotes optional arguments
           $times = runtime( [$no_optimize] );
           @times = runtime( [$no_optimize] );

           $times = runinterval( [$no_optimize] );
           @times = runinterval( [$no_optimize] );

           $times = figuretimes( $seconds [, $no_optimize] );
           @times = figuretimes( $seconds [, $no_optimize] );


SSSSAAAAMMMMPPPPLLLLEEEESSSS
           my $elasped = runtime();
           print "Elapsed time $elapsed\n";
           # prints, eg, "Elapsed time 17:34\n"

           my $sincethen = runinterval(1);
           print "Time since then $sincethen\n";
           # prints, eg, "Time since then 0:00:00:51\n"

           ($day, $hour, $min, $sec) = figuretimes(86400 + 2*3600 + 3*60 + 4, 1);
           # $day = 1; $hour = 2; $min = 3; $sec = 4;

           @times = figuretimes(2*3600 + 3*60 + 4);
           # @times = (2, 3, 4)

           @times = figuretimes(17,1);
           # @times = (0, 0, 0, 17)

           $times = figuretimes(2*3600 + 3*60 + 4, 1);
           # $times = '0:02:03:04';


DDDDEEEESSSSCCCCRRRRIIIIPPPPTTTTIIIIOOOONNNN
       TTTTiiiimmmmeeee::::::::SSSSooooFFFFaaaarrrr has two functions for calculating how long a
       script has been running. `runtime()' always works from the
       time the script was started (using _$_^_T). `runinterval()'
       works from the last time `runtime()' or `runinterval()'
       was called (or since the start of the script).

       Both `runtime()' and `runinterval()' use `figuretimes()'
       to render a raw number of seconds into component time
       units. Both take an optional boolean argument that gets
       passed to `figuretimes()' to influence its output.

       In an array context `figuretimes()' returns the
       timecomponents as an array, in a scalar context it returns
       those components as a :::: delimited string. The default



2000-12-13                 perl v5.6.0                          1





Time::SoFar(3) User Contributed Perl Documentation Time::SoFar(3)


       behaviour is to optimize away 0 output from the longer
       period end of the output, leaving a minimum of
       minutes:seconds. This is good for arrays that will be
       passed to `join()', but not so good for a list of
       variables, so this behaviour can be disabled by using a
       true value for _$_n_o___o_p_t_i_m_i_z_e.

IIIINNNNHHHHEEEERRRRIIIITTTTAAAANNNNCCCCEEEE
       Time::SoFar inherits only from Exporter.

CCCCAAAAVVVVEEEEAAAATTTTSSSS
       Time::SoFar has a granularity of seconds, and is therefore
       not so useful for small elapsed times.

PPPPRRRREEEERRRREEEEQQQQUUUUIIIISSSSIIIITTTTEEEESSSS
       Only stock perl modules are used.

OOOOSSSSNNNNAAAAMMMMEEEESSSS
       So long as _$_^_T and `time()' are calculated using the same
       epoch there should be no operating system dependence.

SSSSEEEEEEEE AAAALLLLSSSSOOOO
       _$_^_T in the perlvar manpage.

CCCCOOOOPPPPYYYYRRRRIIIIGGGGHHHHTTTT
       Copyright 2000 by Eli the Bearded / Benjamin Elijah
       Griffin.  Released under the same _l_i_c_e_n_s_e(s) as Perl.

AAAAUUUUTTTTHHHHOOOORRRR
       Eli the Bearded wrote this to do away with all the _$_^_T one
       liners at the end of his batch processing scripts.


























2000-12-13                 perl v5.6.0                          2


