Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/303.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/blackberry/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 服务器关闭时通过命名管道发送数据_C#_Named Pipes - Fatal编程技术网

C# 服务器关闭时通过命名管道发送数据

C# 服务器关闭时通过命名管道发送数据,c#,named-pipes,C#,Named Pipes,我想知道如何处理这样一种情况:您通过命名管道成功地连接了两个进程(一个服务器和一个客户端),然后突然(出于某种原因)服务器进程结束 管子怎么了?关门了吗? 客户端发送到服务器的信息会发生什么变化?它迷路了吗? 客户端如何知道服务器是否已关闭 祝你一切顺利 Gil例如,如果您使用的是System.IO.Pipes和NamedPipeServerStream,当管道断开或断开连接时,您将得到IOException 当您使用NamedPipeClientStream从服务器读取信息时,我相信客户端会等

我想知道如何处理这样一种情况:您通过命名管道成功地连接了两个进程(一个服务器和一个客户端),然后突然(出于某种原因)服务器进程结束

管子怎么了?关门了吗? 客户端发送到服务器的信息会发生什么变化?它迷路了吗? 客户端如何知道服务器是否已关闭

祝你一切顺利


Gil

例如,如果您使用的是
System.IO.Pipes
NamedPipeServerStream
,当管道断开或断开连接时,您将得到IOException

当您使用
NamedPipeClientStream
从服务器读取信息时,我相信客户端会等到在
NamedPipeClientStream.Connect()上建立连接后再调用,您可以使用
NamedPipeClientStream.Connect(Int32)
在预定时间段后超时连接的选项。除此之外,
StreamReader.ReadLine()
还能够在出现问题时抛出
IOException


NamedPipeClientStream.IsConnected
是一种简单的方法,可以确定客户端是否已成功连接到服务器,或者客户端是否已断开、关闭或断开。

如果您确实担心这一点,您应该研究将WCF与消息队列一起使用。