方法何时应返回完整future的一般准则是什么?假设有两个a和b类,其中B类有一个可以进行大量IO的方法performTask((,并且A类调用了perferct the pertrictask((方法在Java中,可以使用以下方法编写多线程代码:
- 让该方法的呼叫者决定是否使用ThreadPool异步执行方法。在这种情况下,A将异步调用perfersTask((方法,以便B类不需要使其方法异步。
- 让Method performTask((返回未来或完整的future,以便A类简单地调用PerformTask((。
建议的方法是哪种通用准则?
简短答案
您决定。
更长的答案
这取决于:
-
当您知道呼叫者的经常不想等待
performTask()
完成时,使方法同步。 -
当您知道呼叫者会在致电
performTask()
后立即继续做事,并且不在乎结果时,或者稍后再进行检查,请进行方法异步。 -
当您不知道时,请参阅简短的答案。