当在 tcp 客户端程序中使用 connect() 或在 tcp 服务器程序中使用 accept() 时,可能会发生许多可能的异常,例如 TCP SYN 或 TCP SYN/ACK 丢失或其他一些错误
(顺便说一句,我想知道,如果 TCP SYN 很多,connect() 会重新传输 TCP SYN 还是只会产生错误?)
通常源代码就像
if(connect()<0){
...
exit(1);
}
或者
if (accept()<)){
...
exit(1);
}
但是,如果我想再次尝试 connect() 或 accept(),是否可能?喜欢
while(connect()<0){
continue;
}
或者
while(accept()<0){
continue;
}
这样的交易会产生不可接受的后果吗?
此外,send() 和 recv() 怎么样,谢谢!