gpt4 book ai didi

java - ThreadPoolExecutor 在线程死亡时进行清理

转载 作者:行者123 更新时间:2023-12-01 04:41:29 24 4
gpt4 key购买 nike

我有一个ThreadPoolExecutor,它运行一些核心和一定的最大线程数。运行的任务为每个线程创建 HornetQ(独立)连接,并在线程运行时使它们保持 Activity 状态。但是,当线程keepAliveTime到期并且线程死亡时,我们无法关闭它们。有没有办法在线程死亡之前清理资源?

解决这个问题的一种方法是使用 HornetQ 连接池解决方案。

任何建议都将受到高度赞赏。

最佳答案

如果您使用的是 JDK 1.7,您可以在可关闭的接口(interface)上嵌入内容,一旦超出范围,它就会被关闭。我们正在努力在 JMS 2 上实现这一点,但同时您可以嵌入您自己的类委托(delegate)内容。您必须将引用的内容保留在线程中的某个位置,这样只有当线程消失时它才会超出范围。 (也许是本地线程?)

您需要使用 try (statement=statement.open()) {} 并调用自动关闭

关于java - ThreadPoolExecutor 在线程死亡时进行清理,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16442875/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com