本文主要是介绍再谈 NIO,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
之前的文章已经提到了 IO 模型之一的 NIO, 今天打算从 “阻塞”字面 以及java 代码层面再深一步聊一聊 NIO.《到底什么是 IO》 https://mp.weixin.qq.com/s/OkIajg8aDlkLtsE81NP5jQ
All is blocking
从严格意义上说,所有的请求都是阻塞的,原因是所有的请求发出去之后都会等待,只是等待时长多少而已,这点希望大家明白。
阻塞与非阻塞实际上就是阻塞的时间长短不同。
Blocking vs Non-Blocking
两者不同之处在于请求(或方法调用)无法正常处理(没有 ready)时的行为:
- Blocking-mode:客户端线程会一直阻塞等待返回;
- Non-Blocking: 服务端会立即返回,通知客户端线程无法处理,客户端线程不会阻塞;
这篇关于再谈 NIO的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!