【发布时间】:2014-07-09 19:13:50
【问题描述】:
我有下一个代码:
Executor exe = Executors.newFixedThreadPool(20);
while (true) {
try {
exe.execute(new DispatcherThread(serverSocket.accept()));
continue;
} catch (SocketException sExcp) {
System.exit(-1);
} catch (Exception excp) {
System.exit(-1);
}
}
对于每个DispatcherThread,我都会创建一个到数据库的连接(这意味着我有 20 个连接),我需要知道的是,当线程停止或停止或完成它时,我如何关闭与数据库的连接流。
【问题讨论】:
-
我建议关闭连接作为线程工作的一部分,并为失败的情况做一些额外的异常处理。
-
为什么你的runnable的run方法的最后一行不能关闭它打开的数据库连接?
标签: java database multithreading runnable executors