非阻塞套接字与普通套接字的区别应该在哪里?
>在Python中,可以使用socket.setblocking(0)
将套接字设置为非阻塞。
>非阻塞套接字在调用send
,recv
,connect
,accept
后会立即返回。
使用非阻塞套机字实现阻塞的服务端
使用一个客户端连接过来
给服务端 try 一下
服务端还在阻塞,客户端连接不了
非阻塞客户端套接的注意点
> connect操作一定会引发BlockingIOError异常
> 如果连接没有建立,那么send操作引发OSError异常
非阻塞 IO 模型