acceptex()函数到底是阻塞的还是非阻塞

avatar
作者
筋斗云
阅读量:4

acceptex()函数是一个阻塞函数。

在Windows平台上,acceptex()函数用于接受一个传入的连接,并创建一个新的套接字来处理该连接。该函数会一直阻塞直到有新的连接到达。

在Linux平台上,acceptex()函数不是标准的系统调用,而是Windows Sockets 2 API的一个扩展函数。在Linux上,通常使用accept()函数来接受传入的连接。accept()函数在默认情况下是阻塞的,但可以通过设置套接字为非阻塞模式来使其成为非阻塞函数。

需要注意的是,阻塞与非阻塞是相对于调用者来说的。对于调用者来说,acceptex()函数是阻塞的,因为它会一直阻塞直到有新的连接到达。但对于底层网络IO操作来说,acceptex()函数可能是非阻塞的,它可能会立即返回并将连接的处理推迟到后续的回调函数中执行。这种情况通常发生在使用异步IO模型(如IOCP)的情况下。

广告一刻

为您即时展示最新活动产品广告消息,让您随时掌握产品活动新动态!