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

什么是“紧急数据”?

  •  7
  • user206268  · 技术社区  · 14 年前

    手册页 epoll_ctl() 说关于 EPOLLPRI :

    有紧急数据可用于 读取(2)操作。

    “紧急数据”究竟是如何定义的?谁决定哪些数据具有优先权?

    2 回复  |  直到 8 年前
        1
  •  5
  •   Daniel Stutzbach Edward Leno    14 年前

    TCP具有发送带外数据(也称为紧急数据)的功能。通常,tcp中的数据是基于流的;也就是说,接收方读取数据的顺序与发送方写入数据的顺序完全相同。发送者可以决定发送紧急数据,这样可以跳过流。

    但是,它有几个 implementation problems 很少有协议或程序使用它( telnet 是我唯一知道的。从本质上说,它是一个遗物,不用于现代程序。

        2
  •  2
  •   Jakob Borg    14 年前

    TCP数据包可以包含标记为“紧急”的数据。这是oob数据,与普通数据流分离。例如,请参见 wikipedia article 对此。正如本文还指出的,它并不常用,实现也不尽相同,依赖它可能是愚蠢的。