【问题标题】:Stream Multithreading over a single ethernet cable通过单根以太网电缆流式传输多线程
【发布时间】:2011-10-15 22:37:33
【问题描述】:

我有以下以太网网络以便与 PLC(可编程逻辑控制器)通信。一根以太网电缆从 PC 连接到以太网交换机,多根电缆从交换机并行连接到 PLC。每个 PLC 模块都有不同的 IP 地址,我想使用 TCP 连接与它们通信。
在代码中,我通过提供其 IP 为每个模块创建一个 TCPClient 对象,并在发送数据之前连接到它们。我想为每个模块创建一个单独的线程,每个线程将使用 TcpClient.GetStream().Write 方法将数据发送到其模块。当从每个线程调用 GetStream 时,我会得到相同的 Stream 对象(因为只有一根电缆从 PC 出来)还是每个线程会有不同的 Stream 对象?如果它们不同,那么我不需要在线程之间同步,因为 Stream 对象不会是共享资源。如果是这种情况,我假设 .net 将在不同的 Stream.Write 调用之间进行同步,因为只有一根电缆出来。这是真的?欢迎提供有关该主题的其他信息和链接。

【问题讨论】:

    标签: .net multithreading stream


    【解决方案1】:

    不同的 TcpClient 对象,因此不同的流。不需要同步。通过一根电缆多路复用多个 TCP 连接是操作系统中内置的 TCP/IP 驱动程序堆栈的工作。不需要帮忙。

    【讨论】:

      猜你喜欢
      • 2017-08-26
      • 2020-05-17
      • 1970-01-01
      • 1970-01-01
      • 2018-08-28
      • 2020-06-27
      • 1970-01-01
      • 2016-06-04
      • 2015-12-29
      相关资源
      最近更新 更多