gpt4 book ai didi

java - 相当于 HttpClient 4.x 中的 MultiThreadedHttpConnectionManager.shutdownAll()

转载 作者:太空宇宙 更新时间:2023-11-04 07:34:40 25 4
gpt4 key购买 nike

HttpClient 3.x 中,有一个静态 MultiThreadedHttpConnectionManager.shutdownAll(),我们从 ServletContextListener#contextDestroyed() 调用它来清理所有可能挂起的线程(防止类加载器泄漏)。

HttpClient 4.x 中,这个功能已经消失,但有 PoolingClientConnectionManager。但是,它没有静态方法来关闭连接。

如何解决这个问题?

最佳答案

将此方法包含在 HC 3.1 中是一个错误。一般来说,我认为没有理由为每个不同的 HTTP 服务拥有多个连接池。跟踪一两个连接管理器并在必要时关闭它们应该不是那么困难。话虽如此,如果出于某种原因您确实需要不加区别地关闭所有 Activity 连接管理器,则在 OSGi 容器内运行时,您可以使用 HC 从版本 4.3-beta2 开始使用的相同技术:基本上跟踪由自定义 HttpClientBuilder 创建的 HttpClient 实例,并在容器关闭或重新加载包时关闭它们

https://svn.apache.org/repos/asf/httpcomponents/httpclient/tags/4.3-beta2/httpclient-osgi/src/main/java/org/apache/http/osgi/impl/OSGiHttpClientBuilder.java

关于java - 相当于 HttpClient 4.x 中的 MultiThreadedHttpConnectionManager.shutdownAll(),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17118394/

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