最新回答 / 慕村8287198
我是把下載的代碼直接放到Eclipseli運行的,先啟動服務端沒問題,再啟動AClient或者BClient 報錯信息:Exception in thread "main" java.net.ConnectException: Connection refused: connect?? ?at sun.nio.ch.Net.connect0(Native Method)?? ?at sun.nio.ch.Net.connect(Net.java:454)?? ?at sun.nio.ch.Net.conn...
2019-08-26
最新回答 / 張小喜
你看socketChannel.write(這里接收一個ByteBuffer對象)。encode(nickName...)這里也返回的是一個ByteBuffer對象。所以還是在借助byteBuffer來操作socketChannel的。
2019-08-22
最贊回答 / 慕粉2357434992
目前常見的NIO框架1.Netty(主流版本為4.1)Netty是一個NIO客戶端服務器框架,是一個提供異步的、事件驅動的網絡應用程序框架和工具,用以快速開發高性能、高可靠性的網絡服務器和客戶端程序??梢钥焖佥p松地開發協議服務器和客戶端等網絡應用程序。Github地址:https://github.com/netty/netty官網:https://netty.io/開發文檔:https://netty.io/wiki/user-guide-for-4.x.htmlAPI文檔:https://netty....
2019-08-21
講師回答 / 張小喜
你的意思是:為什么服務器只監聽、處理接入事件和可讀事件,而沒有監聽、處理可寫事件是吧。是因為一般的服務器都是一問一答式的,就是說由客戶端問,服務器端答。所以服務器只需要監聽可讀就好,并不需要再監聽可寫了,也沒有這種必要。
2019-05-29
最贊回答 / 張小喜
最開始沒有任何客戶端接入時,serverSocketChannel注冊的是ACCEPT事件,等待客戶端接入;等到有客戶端接入后,服務器與客戶端建立的socketChannel就要注冊READ事件了。而serverSocketChannel還是注冊ACCEPT事件,繼續等待其他客戶端的接入。
2019-05-14