Java CuratorFramework的方法何时开始和结束应该被调用?

Java CuratorFramework的方法何时开始和结束应该被调用?,java,apache-zookeeper,apache-curator,Java,Apache Zookeeper,Apache Curator,据 CuratorFramework实例是完全线程安全的。你应该分享一个 应用程序中每个ZooKeeper集群的CuratorFramework 它还指出,在执行任何其他操作之前,应该调用start方法。这个方法应该在每次操作之前调用还是在初始化之后调用一次就足够了?初始测试表明,每个创建的客户端只应该调用一次start。多次调用它会导致IllegalStateException。初始测试表明,每个创建的客户机只能调用一次start。多次调用它会导致IllegalStateException。在

CuratorFramework实例是完全线程安全的。你应该分享一个 应用程序中每个ZooKeeper集群的CuratorFramework


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

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

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

在创建CuratorFramework实例后调用start一次。因此,启动是:

通过工厂方法之一创建CuratorFramework 在实例上调用start 根据需要使用单个CuratorFramework实例运行应用程序 在应用程序结束时,对实例调用close
注意:我是Curator的主要作者,在创建CuratorFramework实例后调用start一次。因此,启动是:

通过工厂方法之一创建CuratorFramework 在实例上调用start 根据需要使用单个CuratorFramework实例运行应用程序 在应用程序结束时,对实例调用close
注意:我是Curator的主要作者

如果您使用的是.usingNamespace,则无法关闭实例,您将获得一个java.lang.UnsupportedOperationException org.apache.Curator.framework.imps.NamespaceFacade.closeNamespaceFacade.java:70。有解决方法吗?@Randgalt-在我的应用程序中,我注意到人们有一个逻辑,在每次调用中创建CuratorFramework,并最终关闭它。我还记得策展人的框架不应该被多次重建。如果ZK在内部启动ExecutorService,那么创建CuratorFramework并快速关闭是否会导致ZK的连接泄漏?如果您使用.usingNamespace,然后无法关闭该实例,您将得到一个java.lang.UnsupportedOperationException org.apache.curator.framework.imps.NamespaceFacade.closeNamespaceFacade.java:70。有解决方法吗?@Randgalt-在我的应用程序中,我注意到人们有一个逻辑,在每次调用中创建CuratorFramework,并最终关闭它。我还记得策展人的框架不应该被多次重建。如果ZK在内部启动ExecutorService,那么创建CuratorFramework并快速关闭是否会导致ZK的连接泄漏?如果ZK快速启动,ExecutorService可能无法中断?