【发布时间】:2015-10-07 06:14:45
【问题描述】:
在服务器同步发送数据的非阻塞套接字模式下,如果客户端处理 tcp 缓冲区的速度比发送者慢,send() 将开始阻塞/超时。
是服务器异步发送数据的情况吗? (例如使用 boost asio 方法async_send)
【问题讨论】:
标签: c++ networking boost boost-asio
在服务器同步发送数据的非阻塞套接字模式下,如果客户端处理 tcp 缓冲区的速度比发送者慢,send() 将开始阻塞/超时。
是服务器异步发送数据的情况吗? (例如使用 boost asio 方法async_send)
【问题讨论】:
标签: c++ networking boost boost-asio
是的。异步操作将需要更长的时间才能完成。
不,调用异步操作的代码不会阻塞(这就是 asynchronous 的意思)。
send 通常是同步的,async_send 从不同步。当然,如果您等待所有异步操作完成,您最终会遇到相同的延迟,但这是您的选择。
【讨论】: