关于BIO和NIO的理解与总结(网络IO)

BIO:同步阻塞式IO,服务器实现模式为一个连接一个线程,即客户端有连接请求时服务器端就需要启动一个线程进行处理,如果这个连接不做任何事情会造成不必要的线程开销,当然可以通过线程池机制改善。

NIO:同步非阻塞式IO,服务器实现模式为一个请求一个线程,即客户端发送的连接请求都会注册到多路复用器上,多路复用器轮询到连接有I/O请求时才启动一个线程进行处理。

BIO (Blocking I/O): 同步阻塞 I/O 模式,数据的读取写入必须阻塞在一个线程内等待其完成。线程回收是随机单个回收,只有当前监视的线程运行完毕后才能回收进线程池

NIO (Non-blocking/New I/O): NIO 是一种同步非阻塞的 I/O 模型,提供了 Channel , Selector,Buffer 等抽象。线程回收是有一个单独的监视线程在轮训回收,有跑完的线程就放回线程池,如果当前监视的线程没有跑完则轮循下一个

AIO (Asynchronous I/O): AIO 是异步非阻塞的 IO 模型

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值