gpt4 book ai didi

java - 使用 OkHttp 时 Webapp 取消部署内存泄漏,是否误报?

转载 作者:行者123 更新时间:2023-11-28 22:46:32 25 4
gpt4 key购买 nike

OkHttp 在内部为连接池和某种看门狗创建线程。我见过很多人在使用这个库关闭应用程序时遇到这个问题。作者本身似乎并不愿意解决它(https://github.com/square/okhttp/issues/2482,“边际 yield ”)。具体来说,Tomcat 提示内存泄漏,因为线程被抛在后面。看起来这些最终被清理了,有时是在相当长的延迟之后。所以,我的问题是:实际上是否因为这个问题而导致内存泄漏?最终线程会消失,所以这应该意味着所有线程都可以被垃圾收集。正确吗?

最佳答案

我是那些不喜欢 Tomcat 代码卸载的 OkHttp 作者之一。我们将在下一个次要版本中发布我们自己的并发抽象; details here .这可能会缩短关闭最后一个响应和最后一个线程退出之间的 60 秒延迟。

您不应该在现代程序中进行代码卸载。 Tomcat 诞生于 JVM 是长生命周期容器的时代;今天是 Kubernetes 或其他集群编排技术。 Tomcat 的代码卸载策略迫使您跳过尴尬的管理环节。如果您正在与类加载器或安全管理器作斗争,那么您就是在虚构的问题上浪费时间。

关于java - 使用 OkHttp 时 Webapp 取消部署内存泄漏,是否误报?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58537529/

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