在Windows环境下怎样实现多个进程同时向一个文件输入Log

多进程写文件要加锁。一种锁是多进程共享的如互斥量、信号量、事件等锁。另一种可以借用文件本身做锁,写日志时独占打开文件并写入。其他请求被自动阻截,等文件不被占用时再写。这样日志可能会卡顿,需要在内存加缓存解决。再一个方案是我用过的,将日志记录到注册表,优点:1、自带同步,不会写冲突2、可以在不同的进程内写有严格时间序列的日志3、位置固定,好找缺点:必须要加入自动删除旧日志,不然会太大
■网友
自己写个LogAgent.exe
■网友
考虑如下情况:一个进程的log写入同一个文件。写log的操作尽量快,不能让io成为瓶颈全局对象能够正常使用log,不会因为初始化等问题丢失log.我觉得将上面的问题处理好,就算是一个能用的log了。需求清楚了,实现起来不会太难
■网友
写一个专门负责维护日志文件的(守护)程序。其他进程通过消息、管道等传给这个进程。


    推荐阅读