use strict; use warnings; my $expiry = time + 3600; my $time; my $previoustime; #~ while ( 1 ) { for(1..10){ $time = time; my $and = $time + 300 < $expiry; my $or = $time - $previoustime >= 10; $or or my $orr = sleep (10 + $previoustime - $time); dd( [ time => $time], [ expiry => $expiry,], [ and => $and ], [ or => $or, ], [ orr => $orr ] ); $previoustime = $time; warn $time; } __END__