gpt4 book ai didi

c - 套接字发送和 EWOULDBLOCK

转载 作者:行者123 更新时间:2023-11-30 14:50:51 25 4
gpt4 key购买 nike

在套接字通信中:

  1. 在阻塞模式下,send()将返回发送的字节数,然后我必须重复send()直到所有数据都已发送或套接字错误。

  2. 在非阻塞模式下,如果send()无法立即发送所有数据,则会返回 EAGAIN/EWOULDBLOCK 错误,然后,我将 select() > 在 writefds 参数上,直到收到信号。

我的问题:

  1. 来自 select() 的信号是否适用于所有数据? (不部分)。
  2. select() 的错误是否为套接字故障?

最佳答案

In non-blocking mode, send() will return with EAGAIN/EWOULDBLOCK error if it cannot send all data immediately

如果无法立即发送任何数据。

  1. Is the signal from select() for all data? (not partial).

所有什么数据? select() 对您的数据了解什么?它告诉您的是套接字现在已变为可写,这意味着内核套接字发送缓冲区中有一些空间,这意味着 send() 现在将传输至少一个字节。

  1. Is the error from select() as socket failure?

如果 select() 返回 -1,则参数中存在错误,或者提供给其中一个选择集的 FD 无效:通常是已关闭的选择集。

关于c - 套接字发送和 EWOULDBLOCK,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48727065/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com