【问题标题】:InterProcess Communication and BroadCasting进程间通信和广播
【发布时间】:2014-02-14 14:30:04
【问题描述】:

我正在处理进程间通信。我遇到了命名管道通信。

我已经有了一些基本的想法,但需要确定以下几点?

  1. 名称管道是否可以同时拥有多个客户端?

  2. 它是否支持基于不同语言的不同进程构建的通信。

请告诉我,命名管道通信和进程间通信的广播有什么区别?

【问题讨论】:

    标签: c# named-pipes interprocess broadcasting


    【解决方案1】:

    不,单个管道仅支持单个客户端。与 Web 服务器非常相似,它还为每个单独的客户端创建多个连接。管道服务器的工作方式相同。

    是的,在进程之间架起一座桥梁是命名管道的主要用例。

    Windows 支持不同的广播对象,即邮槽。它从未移植到.NET,它非常没用。广播是不可靠的,就像在拥挤的足球场里大喊大叫,却不保证任何人都能听到你的声音。如果您需要广播,那么您应该考虑使用 UDP 套接字。当然还要处理它随机丢失数据的后果。

    如果您考虑命名管道,通常建议使用 WCF。它在它们之上放置了一个层,以使它们更易于使用。

    【讨论】:

    • 先生,感谢您的回复。在阅读了几篇文章并在谷歌上搜索之后。我发现我需要做的是创建一个互斥锁,并且不同的进程可以访问该互斥锁。但是我不知道如何通过 c# 编程来实现它。您可以分享任何文章或示例代码吗?这对我来说会很有价值。
    • 这是另一个问题,您可以通过再次单击按钮来询问(搜索后)。
    猜你喜欢
    • 1970-01-01
    • 2011-06-27
    • 1970-01-01
    • 2011-10-16
    • 1970-01-01
    • 1970-01-01
    • 2020-01-22
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多