http://www.perlmonks.org?node_id=894995


in reply to Re^3: File Locking
in thread File Locking

OPTIMIST (likely to find the item in the list): Start with a shared lock, and without unlocking, "promote" to an exclusive lock once not found; make sure there is a timer on the attempt to prevent a deadlock, and if the timer goes off then unlock and retry from the top.

PESSIMIST (unlikely to find the item in the list): Use the exclusive lock from the beginning.