The London Perl and Raku Workshop takes place on 26th Oct 2024. If your company depends on Perl, please consider sponsoring and/or attending.

NAME

File::Lockfile - create lockfile to prevent process simultaneous run

SYNOPSIS

        use File::Lockfile;

        my $lockfile = File::Lockfile->new(
                'programname.pid',
                '/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 pid file. While text file creating is very simple procedure, module performs additional checks if process is really running.

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

File::PID File::PID::Quick

LICENSE AND COPYRIGHT

Copyright 2008-2010, 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.