sleep EXPR
引数で指定した秒数だけ、スクリプトの実行をスリープさせます。引数を省略すると、永久にスリープします。スリープ中のプロセスは、SIGALRM
を送ることで実行を再開することができます。返却値はスリープした秒数です。
プロセスについては用語集「プロセス」を参照してください。
sleepの使い方
# よくあるファイルロック処理 $retry = 3; sub open_lock{ my $filepath = shift; # ファイルパスを受け取る while ( -f $filepath ){ if ( --$retry <= 0 ){ unlink( $filepath ); # ファイルを削除 return; } sleep(2); } unless ( open( FH, ">$filepath" ) ){ return; } close( FH ); }