【发布时间】:2013-12-30 02:29:27
【问题描述】:
我正在使用套接字实现代理,并且需要在需要时停止/启动 ServerSocket,问题是我正在将服务器作为线程执行,并且一旦线程运行,我不知道如何停止它正在运行...
编辑,新代码:
public void startServer() throws IOException {
final ExecutorService clientProcessingPool = Executors.newFixedThreadPool(10);
Runnable serverTask = new Runnable() {
@Override
public void run() {
try {
@SuppressWarnings("resource")
ServerSocket serverSocket = new ServerSocket(getPORT());
serverSocket.setSoTimeout(1000);
while (process) {
Socket clientSocket = serverSocket.accept();
clientProcessingPool.submit(new ClientTask(clientSocket));
}
} catch (IOException e) {
e.printStackTrace();
}
}
};
Thread serverThread = new Thread(serverTask);
serverThread.start();
}
任何帮助将不胜感激,谢谢!
【问题讨论】:
标签: java multithreading sockets proxy