NAME
File::Lockfile - create lockfile to prevent process simultaneous run
SYNOPSIS
use File::Lockfile;
my $lockfile = File::Lockfile->new(
'programname',
'/var/lock');
...
if ( my $pid = $lockfile->check ) {
print "Seems that programname is already running with PID: $pid";
exit;
}
$lockfile->write;
...
#somewhere in the end
Lockfile->remove
or
$lockfile->remove;
DESCRIPTION
File::Lockfile
provides convenient interface for creating process lock file. While text file creating is very simple procedure, module performs additional checks if process is really running. Additionally, module can install $SIG{__DIE__}
handler to remove lockfile if program exited unexpectedly. It does that, by appending lockfile removing procedure to existing handler.
METHODS
new
Initializes module with required arguments.
check
Checks if lockfile exists, returns PID of running process. Actually, routine also checks if process with PID stored in lockfile actually running.
my $pid = $lockfile->check;
write
Writes lockfile. Use it somewhere after checking if file exists
remove
Removes lockfile. Manage it by yourself.
SEE ALSO
LICENSE AND COPYRIGHT
Copyright 2008, Sergey Sinkovskiy <glorybox@cpan.org>
This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.