使用事件退出进程(Windows,c#)

时间:2013-07-17 23:21:58

标签: c# windows process ipc

考虑一个有两个进程的情况。进程1向进程2发送请求以使用IPC(例如WCF)退出自身。

Process2不能简单地使用退出方法:

void exit()
{
   System...Exit(0);
}

因为Process1的方法调用会死掉。如何确保Process2正常退出(可能在不同的线程上)?

我已经研究了很多,但我没有具体的东西。

1 个答案:

答案 0 :(得分:0)

这似乎就像你在想的那样。

void scheduleShutdown() {
  System.Threadpool.QueueUserWorkItem ( ()=>{ Sleep(30s); System.Exit(); } ); 
}

这是一个可怕的丑陋解决方案,因为正在运行的任何线程都将被杀死。理想情况下,您的每个线程都将检查关闭信号并正常退出。