Ubic::SingletonLock - lock which can be safely created several times from the same process without deadlocking
version 1.60
use Ubic::SingletonLock; $lock = Ubic::SingletonLock->new($file); $lock_again = Ubic::SingletonLock->new($file); # this works, unlike Ubic::Lockf which would deadlock at this moment undef $lock;
Construct new singleton lock.
Consequent invocations with the same $filename will return the same object if previous object still exists somewhere in process memory.
$filename
Any options will be passed directly to Ubic::Lockf.
This module is a part of ubic implementation and shouldn't be used in non-core code.
It passes options blindly to Ubic::Lockf, so following code will not work correctly:
$lock = Ubic::SingletonLock->new("file", { shared => 1 }); $lock = Ubic::SingletonLock->new("file"); # this call will just return cached shared lock again
Vyacheslav Matyukhin <mmcleric@yandex-team.ru>
This software is copyright (c) 2016 by Yandex LLC.
This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.
To install Ubic, copy and paste the appropriate command in to your terminal.
cpanm
cpanm Ubic
CPAN shell
perl -MCPAN -e shell install Ubic
For more information on module installation, please visit the detailed CPAN module installation guide.