永发信息网

为什么说JAVA nio是非阻塞的

答案:1  悬赏:80  手机版
解决时间 2021-01-07 11:32
  • 提问者网友:末路
  • 2021-01-07 08:29
为什么说JAVA nio是非阻塞的
最佳答案
  • 五星知识达人网友:冷風如刀
  • 2021-01-07 09:29
OIO是读写阻塞, NIO是读写非阻塞,就是说服务器等待客户端连接这块都是阻塞的, 一旦建立连接了, OIO下, 我读取客户端发来的信息会因网络延时问题又一次阻塞, 你发消息时也是一样 而NIO下, 你的selector.select()如果注册了read或者write, 当消息到达服务端时, 人家从阻塞中醒来提醒你,换句话说, 不是说阻塞消失了, 而是你想多处阻塞等待还是一处阻塞, 然后你干别的事, 数据来了通知你. 如果有兴趣你还可以了解下AIO, 一样有阻塞, 不过很多事操作系统帮你归口做了而已, 与NIO的区别就是, NIO是数据到了提醒你读, AIO是数据读成功了提醒你一切都好. 总之, 这三种java都可支持, 都存在阻塞, 总的区别就是你在这件事上担当的角色不同
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯