加入收藏 | 设为首页 | 会员中心 | 我要投稿 新余站长网 (https://www.0790zz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长资讯 > 传媒 > 正文

还搞不懂Java NIO?

发布时间:2021-03-01 14:53:28 所属栏目:传媒 来源:互联网
导读:候,如果此时此时没办法读或者写,那么就先去做别的,等到有通知后,再继续读写; 比如你去银行柜台取钱,人比较多,那就先领一个号,等着叫到号再去对应的窗口办理业务;这里稍微有些不太恰当的是,我们等待的过程中,还得听着叫号。 3. 总结 我要等着不能

候,如果此时此时没办法读或者写,那么就先去做别的,等到有通知后,再继续读写;

比如你去银行柜台取钱,人比较多,那就先领一个号,等着叫到号再去对应的窗口办理业务;这里稍微有些不太恰当的是,我们等待的过程中,还得听着叫号。
3. 总结

我要等着不能做其他事就是阻塞,我不用等可以做其他事就是异步。

BIO

同步阻塞;一个请求过来,应用程序开了一个线程,等 IO 准备好,IO 操作也是自己干;

采用 BIO 模型的服务端,由一个独立的 Acceptor 线程负责进行监听;在 while(true) 循环中调用 accept() 方法,等待客户端的请求;

一旦接收到请求,就可以建立套接字开始进行读写操作,这时候不再接收其他的请求,直到读写完成;

为了让 BIO 能够同时处理多个请求,那么就需要使用多线程处理;当服务端接收到请求,就为客户端创建一个线程进行处理,处理完成后再做线程销毁;


(编辑:新余站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    热点阅读