多个进程写入同一文件(.net/c#)

多个进程写入同一文件(.net/c#),c#,process,synchronization,C#,Process,Synchronization,我有几个进程写入同一个日志文件。如何同步它们?我的应用程序是一个用c#编写的web应用程序。我会让他们登录不同的日志文件,或者开始使用代理进程,将消息记录到文件中,用于各种日志记录过程,这样,您只需将消息发送到日志记录进程,而这不一定也会绑定到I/O请求 或者您可以在文件上使用共享互斥锁。我会让他们登录到不同的日志文件,或者开始使用代理进程,将消息记录到文件中,用于各种日志记录过程,这样做,您只需将消息发送到日志记录进程,而这不一定也会绑定到I/O请求 或者您可以在文件上使用共享互斥锁。查看命名

我有几个进程写入同一个日志文件。如何同步它们?我的应用程序是一个用c#编写的web应用程序。

我会让他们登录不同的日志文件,或者开始使用代理进程,将消息记录到文件中,用于各种日志记录过程,这样,您只需将消息发送到日志记录进程,而这不一定也会绑定到I/O请求


或者您可以在文件上使用共享互斥锁。

我会让他们登录到不同的日志文件,或者开始使用代理进程,将消息记录到文件中,用于各种日志记录过程,这样做,您只需将消息发送到日志记录进程,而这不一定也会绑定到I/O请求


或者您可以在文件上使用共享互斥锁。

查看命名信号量。我认为他们应该跨流程工作

System.Threading.Semaphore sem = new System.Threading.Semaphore(0, 1, "FileWriter");

while (sem.WaitOne())
{
    // Do work
    sem.Release();
}

看看命名的信号量。我认为他们应该跨流程工作

System.Threading.Semaphore sem = new System.Threading.Semaphore(0, 1, "FileWriter");

while (sem.WaitOne())
{
    // Do work
    sem.Release();
}

+1表示命名互斥体。不需要在代理进程上乱搞。命名互斥体+1。不需要在代理进程上乱搞。