Beefy Boxes and Bandwidth Generously Provided by pair Networks
Perl Monk, Perl Meditation

Re: Lock File

by McDarren (Abbot)
on Nov 03, 2010 at 04:54 UTC ( [id://869136] : note . print w/replies, xml ) Need Help??

in reply to Lock File

Here is a technique that I picked up here at the monastery a few years back, and have been using ever since:
use Fcntl 'LOCK_EX', 'LOCK_NB'; unless (flock DATA, LOCK_EX | LOCK_NB) { $logger->fatal("Found duplicate script run. Stopping"); exit; } __DATA__ This exists to allow the locking code at the beginning of the file to +work. DO NOT REMOVE THESE LINES!
If I can find the original node, I'll update with a link to it.
Update: Found it. this node by adamk.


Replies are listed 'Best First'.
Re^2: Lock File
by eyepopslikeamosquito (Archbishop) on Nov 03, 2010 at 08:44 UTC
Re^2: Lock File
by JavaFan (Canon) on Nov 03, 2010 at 13:28 UTC
    You actually don't need the latter two lines. Just having either __DATA__ or __END__ will do.

      The text after the __DATA__ is required. Without it, the program will stop working as soon as a coworker tries to improve the code. :P