IPC::Pidfile - run only one instance of a program at a time
Just import the module:
#!/usr/bin/env perl use IPC::Pidfile; ... # program code here
This will create a pidfile for the program and clear it up when the program is finished.
IPC::Pidfile is a module for use with Perl programs when you only want one instance of the script to run at a time. It should work for you if:
You are OK with the pidfile being created in the same directory as the script
You are not using an obscure OS. (Linux, BSD, OSX and Windows should be OK, see CPANTESTERS).
Your program is not using signal handlers for
IPC::Pidfileuses these to clear up the pidfile at the end of the process
This module has a race condition as it attempts to remove the pidfile. It might be better to use
Race condition (see #WARNING).
This is an early release and may contain bugs. To run
IPC::Pidfile in debug mode, create the environment variable
David Farrell <firstname.lastname@example.org>
COPYRIGHT AND LICENSE
This software is Copyright (c) 2015 by David Farrell.
This is free software, licensed under:
The (two-clause) FreeBSD License