客户端实例是昂贵的资源。建议重用已配置的实例来创建 Web 资源。Web 资源的创建、请求的构建和响应的接收都保证是线程安全的。因此,可以在多个线程之间共享 Client 实例和 WebResource 实例
客户端在 2.1 版中仍然是线程安全的吗?我在2.1 的文档中找不到有关线程安全的信息。
客户端实例是昂贵的资源。建议重用已配置的实例来创建 Web 资源。Web 资源的创建、请求的构建和响应的接收都保证是线程安全的。因此,可以在多个线程之间共享 Client 实例和 WebResource 实例
客户端在 2.1 版中仍然是线程安全的吗?我在2.1 的文档中找不到有关线程安全的信息。
是的,Jersey 2.1 客户端是线程安全的,即使在未来的 Jersey 版本中也应该是线程安全的。您可以从一个 Client 实例创建多个 WebTarget,并在这些 WebTarget 上调用多个请求,甚至在一个 WebTarget 实例上同时调用更多请求。
如果您将自定义的非线程安全提供程序注册到客户端或 WebTget 中,则线程安全可能会被破坏。例如,非线程安全且无法同时处理更多请求的 ClientRequestFilter。Jersey 内置提供程序是线程安全的。一些 Jersey 扩展提供程序必须不是线程安全的,在这种情况下,这是在提供程序的 javadoc 中指定的。
我认为,基于2.1 发行说明,在这方面没有任何改变,但我在文档中找不到这种改变的动机。