# **********************************************************
# ロック関数
# **********************************************************
sub lockbydir {
local($ret) = 1;
if ( -e $lock ) {
local($laststamp) = (stat($lock))[9];
if ( $laststamp < time - 60 ) {
rmdir( $lock );
}
}
local($cnt) = 0;
while( 1 ) {
if ( mkdir( $lock ) ) {
last;
}
$cnt++;
if ( $cnt > $lockcnt ) {
$ret = 0;
last;
}
sleep(1);
}
return $ret;
}
|