gpt4 book ai didi

java - 如何捕获异步执行中的 astyanax 失败

转载 作者:行者123 更新时间:2023-12-01 13:27:56 24 4
gpt4 key购买 nike

我从事的项目使用astyanax驱动程序来访问Cassandra。我想实现一个异步操作:

MutationBatch m;
//…
ListenableFuture<OperationResult<Void>> lf = m.executeAsync();
lf.addListener(myRunnableCallback, myExecutor);

问题:假设在 executeAsync() 调用中没有立即抛出异常,如何区分成功执行和失败执行?

我能想到的唯一方法是,当调用完成回调时,lf.get() 在失败的情况下抛出异常。如果这是正确的方法,astyanax 来源中是否有文档或行确认这一点?

最佳答案

我找到了一个解决方法:而不是 ListenableFutureaddListener服用方法Runnable我可以使用参数Futures.addCallback(ListenableFuture<V>, FutureCallback<V>, Executor)FutureCallback有2个方法:onSuccessonFailure 。这解决了我的问题。

https://code.google.com/p/guava-libraries/wiki/ListenableFutureExplained

关于java - 如何捕获异步执行中的 astyanax 失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21710253/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com