我是靠谱客的博主 笨笨书本,最近开发中收集的这篇文章主要介绍写代码来解决多进程/线程同时读写一个文件的问题,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

  1. 大家都知道,PH是没有多线程概念的,尽管如此我们仍然可以用“不完美”的方法来模拟多线程。简单的说,就是队列处理。通过对文件进行加锁和解锁,来实现。当一个文件被一个用户操作时,该文件是被锁定的,其他用户只能等待,确实不够完美,但是也可以满足一些要求不高的应用。   

  2. function T_put($filename,$string){   

  3. $fp = fopen($filename,’a'); //追加方式打开   

  4. if (flock($fp, LOCK_EX)){ //加写锁   

  5. fputs($fp,$string); //写文件   

  6. flock($fp, LOCK_UN); //解锁   

  7. }   

  8. fclose($fp);   

  9. }   



  1. function T_get($filename,$length){   

  2. $fp = fopen($filename,’r'); //追加方式打开   

  3. if (flock($fp, LOCK_SH)){ //加读锁   

  4. $result = fgets($fp,$length); //读取文件   

  5. flock($fp, LOCK_UN); //解锁   

  6. }   

  7. fclose($fp);   

  8. return $result;   

  9. }  



http://blog.sina.com.cn/s/blog_8324791d0101cj1u.html

转载于:https://blog.51cto.com/jhomephper/1668751

最后

以上就是笨笨书本为你收集整理的写代码来解决多进程/线程同时读写一个文件的问题的全部内容,希望文章能够帮你解决写代码来解决多进程/线程同时读写一个文件的问题所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(58)

评论列表共有 0 条评论

立即
投稿
返回
顶部