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();
}
}
---