Java-关于阻塞socket和非阻塞socket的问题

前端开发 前端开发 主题:1148 回复:2395

Java-关于阻塞socket和非阻塞socket的问题

甜柠檬 发布于 2016-12-08 字数 179 浏览 926 回复 3

socket协议非为2种,阻塞型socket和非阻塞型socket,对于这2种socket大家有什么自己的认识?可有什么利弊?在项目中如何选择合适的socket的呢?百度过来复制粘贴的,就别写了,挺没劲的

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

支持 Markdown 语法,需要帮助?

评论(3

浮生未歇 2017-08-18 3 楼

我觉得你还是要搞清楚 为什么会出现NIO ,这才是根本,在NIO没出现前,银行的Java Socket也不是你那样用的。SocketServer只负责连接建立和分发,有对应的后续处理线程处理逻辑和其他,非一直要等到处理完后再循环。

想挽留 2017-01-29 2 楼

简单的说,阻塞就是你干不完不准回来;非组赛就是你先干着,我现看看有其他事没有,你干完了告诉我一声我再干。
阻塞模式和非阻塞模式的主要区别在于无请求来到时,阻塞模式会一直停在接收函数即accep函数,直到有请求到来才会继续向下进行处理,表现在程序中,也就是该程序一直阻塞在该函数调用处不能继续往下执行。而非阻塞模式下,运行接收函数,如果有请求,则会接收请求,如果无请求,会返回一个负值,并继续向下运行。

实际项目应中,如果你下面的事情需要用到前面事情的结果,这样就用阻塞模式;相反前面事情和后面的事情并没有关联的话,用非阻塞模式。

归属感 2016-12-12 1 楼

阻塞就是同步操作

非阻塞就是异步操作

更多的就太多了