在Kotlin中同时对列表中的每个元素应用变换的最佳方法

基本上我试图将一个长期运行的转换应用到Kotlin中的元素列表。 现在我正在使用.map函数,但是这会导致所有的转换顺序运行,因为我需要它们同时运行。

以下是现在的工作原理:

async { val list = await { list.execute().items.map { initialValue -> getResultAfterALongTime(initialValue) }} onCompletion(list) } 

正如我所解释的,函数.map运行转换,然后等待它在下一个元素之前完成。 我应该如何改变这个以允许转换同时运行,以及当这些转换完成时的过程?

parallelStream应该有所帮助。

 async { val list = await { list.execute().items.parallelStream().map { initialValue -> getResultAfterALongTime(initialValue) }} onCompletion(list) }