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

与select()和accept()返回点对应的TCP握手阶段

  •  0
  • VladV  · 技术社区  · 14 年前

    我有一个创建(阻塞)套接字的TCP服务器,等待它可以使用select()进行读取,然后调用accept()并开始读取数据。
    这是一个 example (不是我的)说明这个概念。

    问题是,select()和accept()调用在什么时候返回TCP握手?

    TCP 3-way handshake

    乌班图哈代,如果重要的话。
    2.6.31-14-server 48ya1 smp fri 4月2日15:43:25 msd 2010 x86_64 gnu/linux

    1 回复  |  直到 14 年前
        1
  •  1
  •   caf    14 年前

    这个 select() 返回,指示侦听套接字是“可读的”,在收到该图中的最后一个数据包后立即返回。

    如果你阻止了 accept() 相反,它将在同一点返回(当服务器套接字转换为已建立时)。