Re: [問題] 想用TCP寫一個sever對多個client的程式
※ 引述《calais007 (淺水中)》之銘言:
: ※ 引述《newpuli (sheepu)》之銘言:
: : 想要一個sever 對多個client
: : 並配合TCP協定
: : 以下是sever的建立連線方式
: : private ServerSocket server;
: : private Socket connection;
: : server = new ServerSocket(12345);
: : connection = server.accept();
: : sendToClient("connection successful"); //sendToClient()是自己的的函式
: : //主要是寄"connection successful"
: : //訊息給client
: : 以下是clientA的建立連線方式:
: : private Socket client;
: : private String chatServer = "123.456.789";
: : client = new Socket( InetAddress.getByName( chatServer ), 12345 );
: : 以下是clientB的建立連線方式:
: : private Socket client;
: : private String chatServer = "123.456.789";
: : client = new Socket( InetAddress.getByName( chatServer ), 12345 );
: : 我是先用sever和clientA連線 順利連成功之後 (沒有關掉連線)
: : 再用sever和clientB連線 卻無法連成功 (clientB收不到"connection successful"訊息)
: : 是因為port無法共用的關係嗎?
: : 要怎麼樣做才會有這種一對多的效果呢?
: 聽說JDK 1.4才有的NIO效率很不錯
: 而且不用寫multi thread
: 你可以去survey一下
NIO 固然可以解決multithread的context switching的問題,
但是代價卻是程式的撰寫相當的不容易
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 61.59.64.166
討論串 (同標題文章)
本文引述了以下文章的的內容:
完整討論串 (本文為第 5 之 5 篇):