我是java.uti.concurrent
包装新手。我正在尝试使用ExecutorService
. 这是我的主要代码片段:
while (!getExit()) {
try{
logger.info("RequestListner.run(): listening for new request...");
Socket socket = server.accept();
logger.info("RequestListner.run(): got new request");
MyTask task = new MyTask(socket);
pool.submit(task);
logger.info("RequestListner.run(): submitted new request to pool");
}catch(Exception e) {
logger.error("RequestListner.run(): Exception: "+e.getMessage());
}
}
我的MyTask
班级有一个ExecutorService
对象,它将提交MyTask2
任务。(我的意图是为我的每个套接字连接执行多线程处理)
我的应用程序正在接受我的套接字客户端请求并创建池MyTask2
,执行良好。但是只有在完成我的第一个请求后才接受我的第二个套接字客户端连接。
任何人都可以让我知道如何解决这个问题。
提前致谢。
-文卡特·帕帕纳