0
我正在写一个聊天程序和服务器,当我发送数据可以send()函数需要很长时间发送数据?可以发送功能块
这是我的问题: 我使用linux 2.6与epoll,服务器在单线程 如果发送()块,那么这意味着服务器上的所有其他活动将停止。就好像如果有一个非常慢的客户端不会长时间向TCP数据包发送ACK响应,发送功能是否会马上移动,或者是否会等待客户端很长时间。我不想要的是一个/几个慢速客户端导致聊天服务器延迟。
我想要的是发送()到非阻塞,并很快返回。如果它没有发送所有的数据,它只会返回发送的数量,我会从缓冲区中删除它,并在下一次服务之前继续发送,直到发送所有数据。基本上我不希望发送阻塞在一个缓慢或无响应的客户很长一段时间。