项目中需要用到多线程写日志。
我想用FileStream的异步写的方法。
在回调方法中用Lock同步,
这样调用端可以马上返回,不用等到写完再返回。这样是否能保证写入的先后顺序?请问这样还会有什么问题么?

解决方案 »

  1.   

    文件的特性决定了它是一种独享的资源,所以我想可以把所有写入的请求放入一个请求队列,由另一个线程去完成日志的写入工作。
      

  2.   


    你的这种想法我也想过:
    先把日志内容写入一个队列中 ,然后有一个线程监视队列内容,发现队列中有内容就写入文件这样做可以么?
      

  3.   

    先声明一个静态类,里面两个成员字段,一个是锁对象,一个是序号,然后锁定操作序号。