假设服务器创建了一个命名管道“myTestPipe”。有多少客户端可以连接到“myTestPipe”?从我在网上阅读的内容来看,似乎只有一个客户可以,但想确定一下。
如果只有一个,那么最好使用阻塞 WaitForConnection() 而不是 Asunchronous 方法 BeginWaitForConnection() 因为服务器会等到客户端进程连接然后进行通信?!(无需担心其他客户端连接)
假设服务器创建了一个命名管道“myTestPipe”。有多少客户端可以连接到“myTestPipe”?从我在网上阅读的内容来看,似乎只有一个客户可以,但想确定一下。
如果只有一个,那么最好使用阻塞 WaitForConnection() 而不是 Asunchronous 方法 BeginWaitForConnection() 因为服务器会等到客户端进程连接然后进行通信?!(无需担心其他客户端连接)
您可以让多个客户端连接到同一个命名管道。在 Windows 上,我相信当前的限制是 256 个同时连接到单个命名管道,包括服务器的连接。
(不幸的是,我无法找到相应的 MSDN 页面以供参考,但是这个CPAN 管道参考提到了这个限制。)
您实际上创建了一个管道并等待连接,当它连接时,创建第二个管道并等待它。
对于您创建并等待连接的每个管道,您最多获得一个连接(一次 - 如果它们是请求/响应/关闭样式,您可以回收它们)。
因此,每个连接都是一对一的,就像套接字或其他流一样。