我正在进行一个进程间通信。我遇到了命名管道通信。
我已经有了一些基本想法,但需要确定以下几点?
名称管道是否可以同时拥有多个客户端?
它是否支持通过不同语言构建的不同流程进行通信。
请告诉我,命名管道通信与进程间通信的广播有什么区别?
答案 0 :(得分:5)
不,单个管道仅支持单个客户端。与Web服务器非常相似,它还为每个客户端创建多个连接。管道服务器以相同的方式工作。
是的,在进程之间桥接是命名管道的主要用例。
Windows支持另一个广播对象,即邮件槽。它从未被移植到.NET,它是无用的。广播不可靠,就像在拥挤的足球场大喊大叫,没有任何人能听到你的保证。如果您需要广播,那么您应该考虑使用UDP套接字。当然还要处理随机丢失数据的后果。
如果考虑命名管道,WCF是通常的建议。它在它们上面放置一层,使它们更容易使用。