【发布时间】:2014-02-14 14:30:04
【问题描述】:
我正在处理进程间通信。我遇到了命名管道通信。
我已经有了一些基本的想法,但需要确定以下几点?
名称管道是否可以同时拥有多个客户端?
它是否支持基于不同语言的不同进程构建的通信。
请告诉我,命名管道通信和进程间通信的广播有什么区别?
【问题讨论】:
标签: c# named-pipes interprocess broadcasting
我正在处理进程间通信。我遇到了命名管道通信。
我已经有了一些基本的想法,但需要确定以下几点?
名称管道是否可以同时拥有多个客户端?
它是否支持基于不同语言的不同进程构建的通信。
请告诉我,命名管道通信和进程间通信的广播有什么区别?
【问题讨论】:
标签: c# named-pipes interprocess broadcasting
不,单个管道仅支持单个客户端。与 Web 服务器非常相似,它还为每个单独的客户端创建多个连接。管道服务器的工作方式相同。
是的,在进程之间架起一座桥梁是命名管道的主要用例。
Windows 支持不同的广播对象,即邮槽。它从未移植到.NET,它非常没用。广播是不可靠的,就像在拥挤的足球场里大喊大叫,却不保证任何人都能听到你的声音。如果您需要广播,那么您应该考虑使用 UDP 套接字。当然还要处理它随机丢失数据的后果。
如果您考虑命名管道,通常建议使用 WCF。它在它们之上放置了一个层,以使它们更易于使用。
【讨论】: