1

根据文档

CuratorFramework 实例是完全线程安全的。您应该在应用程序中为每个 ZooKeeper 集群共享一个 CuratorFramework。

它还指出,应该在执行任何其他操作之前调用方法start 。这个方法应该在每次操作之前调用还是在初始化之后调用一次就足够了?

4

2 回答 2

9

创建 CuratorFramework 实例后调用 start 一次。所以,启动是:

  • 通过工厂方法之一创建 CuratorFramework
  • 在实例上调用 start()
  • 根据需要使用单个 CuratorFramework 实例运行您的应用程序
  • 在应用程序结束时,在实例上调用 close()

注意:我是策展人的主要作者

于 2013-12-05T21:58:00.350 回答
1

最初的测试表明,每个创建的客户端只应调用一次start 。多次调用它会导致IllegalStateException

于 2013-12-05T20:14:50.540 回答