Re: [问题] 本机 server&client socket实作问题

楼主: pttworld (批踢踢世界)   2015-05-20 15:52:19
※ 引述《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。
设计问题就请自行努力的。

Links booklink

Contact Us: admin [ a t ] ucptt.com