社区
Java SE
帖子详情
哪位为高手能解释一下 NIO(非阻塞的IO)的实现原理?谢谢!
wdydt163
2002-12-12 01:38:06
我觉得从根本上来说还是阻塞的,只不过换了种方式,是不是啊?
...全文
385
4
打赏
收藏
哪位为高手能解释一下 NIO(非阻塞的IO)的实现原理?谢谢!
我觉得从根本上来说还是阻塞的,只不过换了种方式,是不是啊?
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
4 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
hellking
2002-12-13
打赏
举报
回复
我个人感觉java1.4中的NIO有点类似于JMS的处理法,你可以open多个channel
然后到selector里注册一下,等于把channle的控制权交给selector,selector对注册过的channle进行轮询,如果有内容到达就设置一个标志,你就可以知道你的channle有数据了。
原来的阻塞方式可能会造成大量的thread进入阻塞状态,占用大量的系统资源,现在的非阻塞方式避免了这个问题。
nbm0
2002-12-13
打赏
举报
回复
学习
gavin1976
2002-12-13
打赏
举报
回复
在阻塞模式中,线程将在读或写时阻塞,一直到读或写操作彻底完成。如果在读的时候,数据尚未完全到达套接字,则线程将在读操作上阻塞,一直到数据可用。
在非阻塞模式中,线程将读取已经可用的数据(不论多少),然后返回执行其它任务。如果将真(true)传递给 configureBlockingMethod(),则通道的行为将与在 Socket 上进行阻塞读或写时的行为完全相同。唯一的主要差别,是这些阻塞读和写可以被其它线程中断。
jeffsonxl
2002-12-13
打赏
举报
回复
其实就是建立了两个通道,读和写分开,一人一个通道,互不干扰,但通过管道流可以对他两同时控制
福利--JAVA
高手
真经,视频及随书光盘
福利--JAVA
高手
真经,视频及随书光盘,高级篇,讲述很多编程技术,很好
Java 编程的
高手
技巧 电子书 英文版 html 格式
Java 编程的
高手
技巧 电子书 英文版 html 格式
java
高手
的文章合集
都是PDF格式,学习JAVA的好经验
成为java
高手
的八大高招
你看了之后将会对你学习java大有好处,可能你有意想不到的收获
25本java
高手
合集 各种底层分析各种精华
25本精华资料
Java SE
62,630
社区成员
307,264
社区内容
发帖
与我相关
我的任务
Java SE
Java 2 Standard Edition
复制链接
扫一扫
分享
社区描述
Java 2 Standard Edition
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章