脚本宝典收集整理的这篇文章主要介绍了php – 以线程安全的方式创建文件,脚本宝典觉得挺不错的,现在分享给大家,也给大家做个参考。
这就是我的意思:
foreach ($filenames as $VMiDFile) { if (file_exists($VMidFile)) { // A continue; } $fp = foPEn($VMidFile,'c'); // B if (!flock($fp,LOCK_EX | LOCK_NB)) { // C continue; } if (!filesize($VMidFile)) { // D // wrITe to the file; flock($fp,LOCK_UN); fclose($fp); break; } flock($fp,LOCK_UN); fclose($fp); // E }
但我不喜欢我依赖文件大小.
$lock = fopen("/tmp/".$filename."LOCK","w"); // A if (!flock($lock,LOCK_EX)) { // B continue; } if(!file_exists($filename)){ // C //File doesn't exist so we kNow that this thread will create it //Do stuff to $filename flock($lock,LOCK_UN); // D fclose($lock); }else{ //File exists. This thread didn't create it (at least in this iteration). flock($lock,LOCK_UN); fclose($lock); }
以上是脚本宝典为你收集整理的php – 以线程安全的方式创建文件全部内容,希望文章能够帮你解决php – 以线程安全的方式创建文件所遇到的问题。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。