java Jersey 2.1 客户端线程安全吗?

球衣2.0的文档说

客户端实例是昂贵的资源。建议重用已配置的实例来创建 Web 资源。Web 资源的创建、请求的构建和响应的接收保证是线程安全的。因此,客户端实例和 Web 资源实例可以在多个线程之间共享

在 2.1 版中,客户端是否仍是线程安全的?我无法在 2.1 的文档中找到有关线程安全的信息。


答案 1

是的,泽西岛 2.1 客户端是线程安全的,即使在将来的泽西岛版本中,它也应该是线程安全的。您可以从一个客户端实例创建多个 WebTarget,并在这些 WebTarget 上调用许多请求,甚至同时在一个 WebTarget 实例上调用更多请求。

如果将自定义非线程安全提供程序注册到客户端或 WebTaget 中,则线程安全可能会中断。例如,客户端请求筛选器不是线程安全的,无法同时处理更多请求。泽西岛内置提供程序是线程安全的。某些 Jersey 扩展提供程序不得是线程安全的,在这种情况下,这是在提供程序的 javadoc 中指定的。


答案 2

我认为,根据2.1发行说明,在这方面没有任何变化,但我找不到文档更改的动机。


推荐