java - Only getting one single client in my serverSocket -
this question has answer here:
- java server- accepting more clients 2 answers
i have server socket , want open multiple clients. getting 1, , if close client, im not allowed more client.
server code:
public class server { public void startserver() { final executorservice clientprocessingpool = executors.newfixedthreadpool(10); runnable servertask = new runnable() { @override public void run() { try { inetaddress ip; connect cn = new connect(); serversocket serversocket = new serversocket(9239); socket clientsocket; system.out.println("waiting clients connect..."); clientsocket = serversocket.accept(); string hostname = ""; string hostip = ""; string pc = ""; clientprocessingpool.submit(new clienttask(clientsocket)); hostname = clientsocket.getinetaddress().gethostname(); hostip = clientsocket.getinetaddress().gethostaddress(); system.out.println(hostname + "/" + hostip); pc = hostname + "/" + hostip; cn.insert(pc); } catch (ioexception e) { system.err.println("unable process client request"); e.printstacktrace(); } catch (classnotfoundexception ex) { logger.getlogger(server.class.getname()).log(level.severe, null, ex); } catch (sqlexception ex) { logger.getlogger(server.class.getname()).log(level.severe, null, ex); } } }; thread serverthread = new thread(servertask); serverthread.start(); } private class clienttask implements runnable { private final socket clientsocket; private clienttask(socket clientsocket) { this.clientsocket = clientsocket; } @override public void run() { system.out.println("got client !"); try { clientsocket.close(); } catch (ioexception e) { e.printstacktrace(); } } } }
when im using client, im getting ip , hostname, but, if launch client wont listen it.
what im doing wrong? think not necessary upload client code cause im getting first, think im doing wrong @ this.
you have put thread while-loop, without after creating 1 connection code finished , stop.
Comments
Post a Comment