BatchSystem-SBS

 view release on metacpan or  search on metacpan

lib/BatchSystem/SBS/Common.pm  view on Meta::CPAN

eval{
  require File::Flock;
};
if($@){
  require LockFile::Simple;
  warn "$@\nUsing LockFile::Simple";
  $simpleLocker=LockFile::Simple->make(-format => '%f.lck',
				       -max => 20,
				       -delay => 1,
				       -nfs => 1,
				       -autoclean => 1
				      );
}

sub lockFile{
  my $f=shift or CORE::die  "must pass an argument to lockFile";
  if($simpleLocker){
    return $simpleLocker->trylock($f) or CORE::die  "cannot lock [$f]: $!";
  }else{
    File::Flock::lock("$f.flck", (($OSNAME=~/win/i)?'shared':'')) or CORE::die  "cannot lock ($f): $!";
  }



( run in 0.332 second using v1.01-cache-2.11-cpan-4d50c553e7e )