Socket套接字编程(I/O模型)

阻塞I/O 当上层应用调用recv系统调用时,如果对方没有发送数据(缓冲区没有数据),上层应用将被Linux内核阻塞(默认行为)。当对方发送了数据,linux内核套接字缓冲区有数据后,内核会把数据copy给用户空间。然后上层应用解除阻塞,执行下一步操作。 非阻塞I/O 上层应用程序将套接字设置成非阻塞模式。轮询调用recv函数来接收数据。若缓冲区没有数据,上层应用程序不会阻塞,recv返回值为-1
相关文章
相关标签/搜索