为了账号安全,请及时绑定邮箱和手机立即绑定

解锁网络编程之NIO的前世今生

难度入门
时长 1小时40分
学习人数
综合评分9.57
43人评价 查看评价
9.5 内容实用
9.4 简洁易懂
9.8 逻辑清晰
感谢老师,非常好。
讲师很棒啊!
注意广播是在可读事件里调用的,不是start方法

最新回答 / 爱上棉宝宝
这个看不懂也没事,理清思路,看懂步骤操作。能看懂api就行,知道如何使用就行,代码不用记住。若是真想看懂,可以先理解一下中文意思,再看老师的代码。

最新回答 / 中国鹰派
服务器接收客户端请求时,需要读取客户端发送的请求数据,这时候要注册可读事件;服务器接收完客户端的请求后,需要向客户端发送一个响应,也就是需要向客户端写数据,这时候要注册可写事件;服务器将响应写给客户端后,又需要等待客户端的下一次请求,所以又需要注册可读事件;
总结得也很有心,不当老师可惜了,缺的就是你这样细心又有实力的老师
首先这个set是HashSet,而HashSet应该是和HashMap一样,是采用哈希值来做唯一标识的,又因为SelectionKey并没有重写hashCode和equals方法,所以每个新的SelectionKey实例都会一直存在Set内,并不会被替换,所以需要手动移除。
感谢老师,后会有期!
好,感谢老师分享知识

已采纳回答 / chenlianlian
如果接收数据也放在main线程中,while(scanner.hasNextLine) 一直在循环,你的数据怎么能接收到呢,或者你先把接收数据代码是一个while(true)代码是死循环,线程一直在执行一个循环体中的代码

最新回答 / qq_沉醉_1
你可以这样理解,服务度设置非阻塞模式是规则;客户端连接的时候也要按照这个规则连接;然后剩下的可读,可写都是在这个规则下进行的,所以就不要再设置了

最新回答 / HiramJoyce
距离提问已经三年了,你应该已经有了答案,但还是简单回答一下吧!如果是普通的网络请求,一般走http请求的模式就够了,一问一答,简单方便如果是对实时性和持续连接要求比较高的,可以采用websocket方案还有一种就是通知的推送,这种一般走的差不多就是课程里的方案,tcp长连接,但是还会加上一些心跳检测之类的机制等等,推送是个很大的学问,市面上专门做推送的厂商也有很多,可以去了解一下
慕课网唯一的免费讲解nio 的视屏 赞一个
课程须知
1.具备基础Java知识 2.了解IO流相关知识 3.了解多线程相关知识
老师告诉你能学到什么?
1.了解编程模型,学会从模型角度学习一项新知识 2.温习BIO网络编程知识 3.学习NIO网络编程原理及设计思想 4.如何使用JDK中NIO相关核心类的API 5.通用NIO网络编程步骤 6.如何实现一个基于NIO的多人聊天室程序 7.NIO网络编程的缺陷有哪些

微信扫码,参与3人拼团

意见反馈 帮助中心 APP下载
官方微信
友情提示:

您好,此课程属于迁移课程,您已购买该课程,无需重复购买,感谢您对慕课网的支持!

本次提问将花费2个积分

你的积分不足,无法发表

为什么扣积分?

本次提问将花费2个积分

继续发表请点击 "确定"

为什么扣积分?

举报

0/150
提交
取消