How to wait for several Futures
问题 Suppose I have several futures and need to wait until either any of them fails or all of them succeed. For example: Let there are 3 futures: f1 , f2 , f3 . If f1 succeeds and f2 fails I do not wait for f3 (and return failure to the client). If f2 fails while f1 and f3 are still running I do not wait for them (and return failure ) If f1 succeeds and then f2 succeeds I continue waiting for f3 . How would you implement it? 回答1: You could use a for-comprehension as follows instead: val fut1 =