作者silver8250 ((阿信))
看板java
标题Re: [问题] 想用TCP写一个sever对多个client的程式
时间Mon Apr 23 23:04:33 2007
※ 引述《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