或以使用windowns的日志服务,
或者自己写一个windows服务,日志都使用这个服务来处理。
总之,就是把这种并发的可能性由一个专门的日志处理程序/服务来进行处理。

解决方案 »

  1.   

    if you are programming those programs involved, create/WaitOne a named Mutex (which is valid across process boundaries) before writing to the file, seehttp://msdn.microsoft.com/library/default.asp?url=/library/en-us/cpref/html/frlrfSystemThreadingMutexClassctorTopic.asp
      

  2.   

    线程的话用 lock,进程的话在操作文件时设置文件对象为 FileShare.Read而如果多个同样的进程可能会并发,那么你可以用 try 然后捉 ex 再 thread.sleep
      

  3.   

    因为有的时间被拒绝的不一定是你写的程序,也有可能是其它软件对它进行了lock 所以你先检测是必然的