【问题标题】:Bi-Directional Communication using C# TCP Channels使用 C# TCP 通道的双向通信
【发布时间】:2010-10-26 03:44:33
【问题描述】:

是否有本地方式来实现 Genuine Channels (http://www.genuinechannels.com) 组件提供的功能?本质上,它提供与 .net 远程处理组件相同的功能,唯一的区别是 .net 远程处理是单向的。我正在寻找一些东西,作为客户端,我可以连接到服务器,然后将消息传递给服务器,然后让服务器能够将消息传递给客户端(只要服务器需要,客户端不需要调用函数)。

感谢您的帮助!

【问题讨论】:

    标签: c# networking tcp remoting genuinechannels


    【解决方案1】:

    WCF 具有基于 TCP 的双向支持作为标准。

    (当WCF通过TCP做旁路通道时,来自一端的消息可以阻塞来自另一端的消息。这是由于WCF的旁路通道只允许两端发送消息,它不会创建两个独立的单个 TCP 套接字上的通道。)

    但是,WCF 没有通过单个 HTTP 连接和WCF bydirectional HTTP surport does not cope with firewalls 的双向支持。

    【讨论】:

      【解决方案2】:

      您要么必须切换客户端和服务器的角色(即谁在监听谁在写),或者您可以在同一端口上打开第二个套接字来提供客户端的服务器。您客户端的服务器会侦听来自您所称的服务器的消息,然后[引发事件|队列|处理]它收到的消息。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2013-12-01
        • 1970-01-01
        • 2018-05-26
        • 2012-01-23
        • 2015-08-14
        相关资源
        最近更新 更多