I/O模型简介

根据网络编程对I/O模型的分类,可以有一下五种I/O模型。

  • 阻塞I/O模型

  • ​非阻塞I/O模型

  • I/O复用模型

  • 信号驱动I/O模型

  • 异步I/O模型

阻塞I/O模型:最常用的I/O模型,所有操作都是阻塞的,在数据包到达且被复制到应用进程的缓冲区或发生错误时才返回,在此期间一直等待,从调用到接收数据的整段过程都是阻塞的。

I/O模型简介

非阻塞I/O模型:如果没有数据返回,就会返回一个错误,然后客户端进行轮询不断地要求返回数据,知道数据返回。

I/O模型简介

I/O复用模型:调用之后,服务端提示客户端数据准备好了,客户端执行读取要求数据返回调用。与非阻塞的区别是,不轮询扫描了,等待知道服务端提示。

I/O模型简介

信号驱动I/O模型:建立一个信号源SIGO来等待数据准备好的提示,再进行数据的读取。

I/O模型简介

异步I/O:告知I/O操作,并在操作完成之后提示。

I/O模型简介

 

欢迎关注订阅微信公众号,程序员的压哨绝杀,一起分享生活工作中的见闻趣事。

I/O模型简介