Re: [問題] 本機 server&client socket實作問題

看板java作者 (批踢踢世界)時間10年前 (2015/05/20 15:52), 編輯推噓0(000)
留言0則, 0人參與, 最新討論串3/4 (看更多)
※ 引述《a2975313 (GN)》之銘言: : ※ 引述《a2975313 (GN)》之銘言: : : 首先描述一下環境... : : 1個console(模擬server), 1個jframe(模擬client), 以上兩個階在同一個project中... : : 問題來的, project run起來後serverSocket.accept()有偵測到client連線, : : 但後續從client端printWriter.write()資料後, serverSocket.accept()都無法捕捉到, : : 也沒出現error or exception... : : 想問有沒有人實作過本機端server&client socket的情況~ : : 程式碼有點長, 有需要的話站內信... : https://gist.github.com/dukeChang/9e7fc2f747592a9474ba 嗯。關鍵在於Server.java的 Thread thread = new Thread(new ClientHandler(clientSocket, clientOutputStream)); 你把clientSocket送給誰的問題。 在這裡顯然是ClientHandler,所以 在4.1下面使用while(true)把sendToEveryOne包起來就可以了。 因為ClientHandler的run()如果沒有loop就只跑一次。 只是加了loop這樣會變成每次都會送給所有人, 應該在設計上要分成sendToOne和sendToEveryone。 設計問題就請自行努力的。 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 111.248.175.142 ※ 文章網址: https://www.ptt.cc/bbs/java/M.1432108342.A.E34.html
文章代碼(AID): #1LN3qsuq (java)
文章代碼(AID): #1LN3qsuq (java)