退出等待传入管道流阻塞的应用程序

时间:2012-08-23 13:13:10

标签: c# named-pipes namedpipeserverstream

我有一个在线程中运行NamedPipeServerStream的应用程序,并在其上等待连接:

NamedPipeServerStream pipeServerTemp = new NamedPipeServerStream(PIP_NAME, PipeDirection.InOut, 254);
pipeServerTemp.WaitForConnection();

应用程序总是在等待新连接,但是当我尝试终止应用程序时,进程会挂起对WaitForConnection的调用。

我已经尝试中止有问题的线程,但它并没有杀死应用程序。

如何告诉NamedPipeServerStream停止侦听连接?

修改

我可以看到NamedPipeServerStream有一个名为EndWaitForConnection的方法,但需要引用IAsynchResult,我会在哪里获得该对象?

1 个答案:

答案 0 :(得分:0)

在答案to another question中找到了我正在寻找的解决方案。

为了它的价值,我选择了连接到Stream的简单解决方案,然后立即关闭连接而不是使其异步。