插槽的FIONBIO和FIOASYNC有什么区别?

时间:2011-09-16 05:39:01

标签: c asyncsocket

似乎这两个选项都可用于使套接字无阻塞/异步?

或者非阻塞和异步之间有什么区别?

1 个答案:

答案 0 :(得分:3)

如果您还没有,可以在维基百科的BSD sockets页面上看到非阻塞套接字和阻塞套接字之间的区别。

此外,您可以查看ioctlsocket()MSDN page for a few details on FIONBIO

According to IBM

  

FIOASYNC启用简单形式的异步I / O通知。这个   命令导致内核将SIGIO信号发送到进程或a   可以进行I / O时的进程组。只有套接字,ttys和   伪ttys实现了这个功能。

     

FIONBIO启用非阻塞I / O.效果类似于设置   带有fcntl子例程的O_NONBLOCK标志。第三个参数   此命令的ioctl子例程是指向整数的指针   指示是启用还是禁用非阻塞I / O.一个   值为0将禁用非阻塞I / O.

我希望这能帮到你一点点。