\n";
$fl_name = './flock.dat';
if(($fn1=fopen($fl_name,'c+'))!==false){
if(($fn4=fopen($fl_name,'r+'))===false) exit('open error');
flock($fn1,LOCK_EX,$rc);
echo "flock1 rc = $rc
\n";
if(($fn5=fopen($fl_name,'r+'))===false) exit('open error');
if(($fn2=fopen($fl_name,'r+'))===false) exit('open error');
if(flock($fn2,LOCK_EX | LOCK_NB,$rc)===false){
echo "lock2 error $rc
\n";
}
fclose($fn2);
if(($fn2=fopen($fl_name,'r+'))===false) exit('open error');
if(flock($fn2,LOCK_EX | LOCK_NB,$rc)===false){
echo "lock2 error2 $rc
\n";
}else{
echo "lock2 success $rc
\n";
}
fclose($fn2);
fclose($fn1);
if(flock($fn5,LOCK_EX | LOCK_NB,$rc)===false){
echo "lock5 error ?? $rc
\n";
}else{
echo "lock5 success @@ $rc
\n";
}
fclose($fn5);
if(flock($fn4,LOCK_EX | LOCK_NB,$rc)===false){
echo "lock4 error ?? $rc
\n";
}else{
echo "lock4 success @@ $rc
\n";
}
fclose($fn4);
if(($fn3=fopen($fl_name,'r+'))===false) exit('open error');
if(flock($fn3,LOCK_EX | LOCK_NB,$rc)===false){
echo "lock3 error ?? $rc
\n";
}else{
echo "lock3 success @@ $rc
\n";
}
fclose($fn3);
if(($fn1=fopen($fl_name,'r+'))===false) exit('open error');
if(flock($fn1,LOCK_EX | LOCK_NB,$rc)===false){
echo "lock1 error2 ?? $rc
\n";
}else{
echo "lock1 success @@ $rc
\n";
}
fclose($fn1);
}
?>