php cron作业重叠
您好,几个月前我用perl编写了一个脚本,用于检查作业的重叠php cron作业重叠,php,perl,translation,Php,Perl,Translation,您好,几个月前我用perl编写了一个脚本,用于检查作业的重叠 use Fcntl ':flock'; INIT { my $waitcount=12; # possible attemtps to run script my $waitseconds=300; # wait for $waitseconds each attempt my $lockstatus=0;#no lock was attained while ($waitcount > 0){
use Fcntl ':flock';
INIT {
my $waitcount=12; # possible attemtps to run script
my $waitseconds=300; # wait for $waitseconds each attempt
my $lockstatus=0;#no lock was attained
while ($waitcount > 0){
if (open LH, $0){
while ($waitcount > 0){
if (flock LH, LOCK_EX|LOCK_NB){
$waitcount=0;#signal end of waiting
$lockstatus=1;#lock was attained
}
else{
--$waitcount;#decrement waitcount
print "waiting to be able to lock $0\n";
sleep $waitseconds;
}#end else
}#end while
}#end if
else{
--$waitcount;#decrement waitcount
print "waiting to be able to open $0\n";
sleep $waitseconds;
}#end else
}#end while
if ($lockstatus == 0){
die "no lock was attained\n";
}#end if
}
我想知道我们是否可以用php做类似的事情
如何与当前运行部分php作业的php代码集成?当然可以。您使用的唯一特定功能是“flock”,这在php中也可用(请参阅) 其他步骤非常类似:
- 将“我的”替换为“$”
- 带有while(1)循环的init块
- 死掉
- 以及if案例到php表示