NIO(一)基础理解

来源:互联网 发布:数据nbastat 编辑:程序博客网 时间:2024/06/08 09:46

NIO(非阻塞IO),我们的网络数据是通过网络进行交流,但是相比于CPU和磁盘,网络实在是慢得多,为了更好的性能IO中有缓冲和多线程(一次处理多的缓冲比多次处理少的无缓冲更好),一个连接对应一个缓冲对应一个线程,如图:

,但是这个有一些缺点,就是线程的切换创建这些开销,实际情况中有些连接连接上后其实并不需要请求数据,这个时候NIO有更好的性能,也就是把上图的线程减少到一个,其中的线程和缓冲是具体NIO编码地方,有准备好的连接就让线程工作,没有就去寻找另外一个连接,这样不会因为第一个连接的阻塞而让性能下降,线程的数量也降到的最低。

0 0
原创粉丝点击