多进程写文件的三种方式
来源:互联网 发布:编程数学要求高吗 编辑:程序博客网 时间:2024/04/30 20:11
多进程写log:
(1)通过文件加锁的方式,在一个进程访问的时候将文件加锁,处理完了再关闭,不过这种方式会造成文件大频繁操作,导致性能比较低(磁盘慢)。
另外对于这种方式,有个小的优化就是,可以每个进程有一个内存区域,等到内存区域满了之后再存储,不过可能会造成中间如果出现问题,会导致信息不能够记录(开缓存);
(2)通过信号灯或者令牌的方式,当一个进程活的信号灯的时候或者令牌的时候可以使用,或者加互斥,每个进程使用统一的一个互斥量,如果存在则证明有文件在读写,其他进程需要等待。
(3)通过消息的方式,有一个主线程维护一个队列,其他进程在处理log时,与这个主进程通信,将log信息发给主进程,主进程从队列中取出内容进行写入操作,当然,这里,主进程最好也有一个内存区域,当信息满时在写入文件。当然如果觉得消息队列不好处理,也可以使用windows自带的消息对列,进行处理。
0 0
- 多进程写文件的三种方式
- java写文件的三种方式
- QTP写脚本的三种方式
- 创建进程的三种方式
- 创建进程的三种方式
- 创建进程的三种方式
- 操作系统控制进程的三种方式
- 多进程写文件的共享问题:
- linux进程创建(4)父子进程的缓存方式写文件
- java写文件的几种方式
- java 写文件的三种方法
- java 写文件的三种方法
- 写文件方式的日志
- 实用的写文件方式
- 读取资源文件的三种方式
- xml文件解析的三种方式
- xml文件解析的三种方式
- java写入文件的三种方式
- centos6.x禁用ipv6的方法
- JS获取项目路径
- 把myeclipse生成的javadoc,转成chm格式
- Ubuntu下(Linux+Apache+MYSQL+PHP, LAMP)环境搭建
- Remove Duplicates from Sorted Array
- 多进程写文件的三种方式
- Eralng学习
- Windows下搭建PHP开发环境
- HDU2276 - Kiki & Little Kiki 2(矩阵快速幂)
- VMware虚拟机XP系统安装
- 使用Editplus配置PHP调试环境
- android jni编译时Android.mk文件的规范说明
- bzoj3224(treap)
- linux安装xdebug