代码之家  ›  专栏  ›  技术社区  ›  OTZ

保证每一条线都能从多个管道(标准件)完全接收到

  •  1
  • OTZ  · 技术社区  · 15 年前

    前几天我问是否保持了数据完整性(刷新的数据) 本地主机的STDIN。如果刷新的数据很大,答案是否定的。 Data integrity question when collecting STDOUTs from multiple remote hosts over SSH

    完全传递到单个标准,不会与

    但是如果我可以通过 本地主机上只有一个STDIN,其中包含多个(STDOUT)管道。)

    1 回复  |  直到 8 年前
        1
  •  1
  •   Borealid    15 年前

    这可以通过以太网中使用的拥塞退避系统来实现。

    独特的

    • 检查其他进程的分隔符;当单个其他进程的分隔符出现奇数时,请稍候。
    • 写入分隔符。
    • 检查另一个进程是否也写入了不匹配的分隔符。如果是这样的话,退出一个随机(增加)的数量并返回到第一步。
    • 写入数据。
    • 写入分隔符。

    这将确保,虽然你会有一些垃圾,每一个完整的信息最终会通过。

    推荐文章