zoukankan      html  css  js  c++  java
  • 08_zookeeper的客户端工具curator_watcher

    【使用usingWatcher()】

    //两个usingWatcher的传入参数不同
    public interface Watchable<T> {
        T watched();
    
        T usingWatcher(Watcher var1);
    
        T usingWatcher(CuratorWatcher var1);
    }

    [提前写好两个实现类]

    //实现原生的watcher接口实现
    class MyWatcher implements Watcher{
        @Override
        public void process(WatchedEvent watchedEvent) {
            System.err.println("Watcher事件触发:"+watchedEvent.getPath());
        }
    }
    
    //实现curator的CuratorWatcher接口
    class MyCuratorWatcher implements CuratorWatcher{
        @Override
        public void process(WatchedEvent watchedEvent) throws Exception {
            System.err.println("CuratorWatcher事件触发:"+watchedEvent.getPath());
        }
    }

     【原生Watcher代码示例】

    //watcher事件,当使用usingWatcher的时候,监听只会触发一次,监听完毕后销毁
    client.getData()
            .usingWatcher(new MyWatcher())
            .forPath(nodePath);
    
    System.in.read();  //暂停下线程

    【运行结果】

    【CuratorWatcher事件代码示例】

    //watcher事件,当使用usingWatcher的时候,监听只会触发一次,监听完毕后销毁
    client.getData()
            .usingWatcher(new MyCuratorWatcher())
            .forPath(nodePath);
    
    System.in.read();  //暂停下线程

    【运行结果】

    与上面一致。

  • 相关阅读:
    HDU1883 Phone Cell
    HDU2297 Run
    关于反射的疑惑
    struts2+spring 实例教程
    在.Net 模板页中使用CSS样式
    到底是什么反射,泛型,委托,泛型
    asp.net如何实现删除文件夹及文件内容操作
    学好C#方法
    Web网页安全色谱
    总结一些ASP.NET常用代码
  • 原文地址:https://www.cnblogs.com/HigginCui/p/9694332.html
Copyright © 2011-2022 走看看