Github user leyoliu1987 commented on the issue:

    https://github.com/apache/curator/pull/245
  
    Hi Mr Scott,
        I absolutely aggree you are right when you use 
"cache.getListenable().addListener(T listener)",can you try more time by using 
"cache.getListenable().addListener(T listener, Executor executor)" like below:
    
    public class TreeCacheExample
    {
        public static void main(String[] args) throws Exception
        {
            CuratorFramework client = 
CreateClientExamples.createSimple("127.0.0.1:2181");
            client.getUnhandledErrorListenable().addListener((message, e) -> {
                System.err.println("error=" + message);
                e.printStackTrace();
            });
            client.getConnectionStateListenable().addListener((c, newState) -> {
                System.out.println("state=" + newState);
            });
            client.start();
    
            TreeCache cache = TreeCache.newBuilder(client, 
"/").setCacheData(false).build();
             **ExecutorService pool = Executors.newFixedThreadPool(10);**
            cache.getListenable().addListener((c, event) -> {
                if ( event.getData() != null )
                {
                    System.out.println("type=" + event.getType() + " path=" + 
event.getData().getPath());
                }
                else
                {
                    System.out.println("type=" + event.getType());
                }
            },**pool** );
            cache.start();
    
            BufferedReader in = new BufferedReader(new 
InputStreamReader(System.in));
            in.readLine();
        }
    }
    
    



---

Reply via email to