- or download this
>perl lockdemo.pl
locker: flock LOCK_EX
locker: locked
...
main: 5 seconds have passed
locker: flock LOCK_UN
locker: unlocked
- or download this
sub locker
{
my $start=time();
...
my $stop=time();
say 'locker ran for ',$stop-$start,' seconds';
}
- or download this
>perl lockdemo-timed.pl
locker: flock LOCK_EX
locker: locked
...
locker ran for 10 seconds
>
- or download this
H:\tmp\lockdemo>perl lockdemo-timed.pl
locker: flock LOCK_EX
locker: locked
...
locker ran for 10 seconds
H:\tmp\lockdemo>
- or download this
sub locker
{
$SIG{'ALRM'}='IGNORE';
...
my $stop=time();
say 'locker ran for ',$stop-$start,' seconds';
}
- or download this
>perl lockdemo-select.pl
locker: flock LOCK_EX
locker: locked
...
locker ran for 10 seconds
>
- or download this
H:\tmp\lockdemo>perl lockdemo-select.pl
locker: flock LOCK_EX
locker: locked
...
locker ran for 10 seconds
H:\tmp\lockdemo>
- or download this
sub locker
{
$SIG{'ALRM'}=sub { warn "*** ALARM ***" };
...
my $stop=time();
say 'locker ran for ',$stop-$start,' seconds';
}
- or download this
>perl lockdemo-signal.pl
locker: flock LOCK_EX
locker: locked
...
locker ran for 10 seconds
>