我有一个用例,我需要进行数据库调用以检索中的一些数据runAsync()
。我有以下方法:
return CompletableFuture.runAsync(() -> {
// Line 1
// Line 2 - fetch from database
// Line 3 - use the retrieved value to set field on an object
})
我的问题是-第3行是否一定要在第2行之后依次执行?我需要了解任何陷阱吗?
中的三Runnable
行将依次执行,依次为1、2、3。
在runAsync
适用于Runnable
作为一个整体,而不是单独的线路。
如果您有多个呼叫runAsync
,您将失去订购保证。
您可以使用thenApply
(以及相关的thenXxxx)方法来保持顺序,并对不同的行使用不同的方法。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句