我正在编写一个多线程应用程序,其中有一个主线程将任务分配给工作线程。根据任务,工作线程使用 全局环境 创建连接。当一个工作线程完成它的任务时,它会关闭连接(我确定,终止时没有抛出异常)。
我的问题是,经过一段时间(有时5分钟,有时5个小时),线程无法从环境中获取连接,并且它们会被阻止。
可能是什么问题?
答案 0 :(得分:1)
我想我没有正确识别问题。我认为线程被阻止,但实际上他们没有,他们只是意外地离开那里:)。问题解决了。
答案 1 :(得分:0)
您是否考虑过使用线程池?然后,每次完成工作时都不需要关闭连接。 我认为,设置/关闭数据库连接也非常昂贵。