一个很简单,但又很棘手的关于socket问题
在一个套字节中其代码于下:
public void a(){
while (selector.select() > 0) {
Set selectedKeys = selector.selectedKeys();
Iterator readKeys = selectedKeys.iterator();
while (readKeys.hasNext()) {
selKey = (SelectionKey) readKeys.next();
readKeys.remove();
if (selKey.isAcceptable()) {
ServerSocketChannel ServerClient = (ServerSocketChannel) selKey.
channel();
try {
client = ServerClient.accept();
client.configureBlocking(false);
client.register(selector,
SelectionKey.OP_READ | SelectionKey.OP_WRITE);
}
catch (Exception e) {
e.printStackTrace();
}
}
}
}
}
如果有3个客户段同时连接,则产生3个client我想每一次while循环时在函数a外取得一个client对象但又不想结束循环,大侠,该程序该怎么改(只要是功能不变可以修改程序结构(程序功能:当有客户端和他连接是产生client对象,接着又循环等待)),能想到好方法的,我拜他为师。有用多线和socket编程的请留下联系方式,我的msn为tlq2260@hotmail.com欢迎大家加入。