kotlin join()和complete()的区别

frebpwbc  于 2023-10-23  发布在  Kotlin
关注(0)|答案(1)|浏览(118)

对于一个CompletableJob,job.join()job.complete()有什么区别?从文档中,我了解到job.join()会挂起当前线程,直到作业完成。这不是和job.complete()一样吗?在我看来,它也要等到工作完成。

jogvjijk

jogvjijk1#

它们是完全不同的操作:join()等待作业完成(但不使其完成),complete()完成作业,但不等待任何东西。
从你的描述中,我感觉你读了join()的文档,但你没有读complete()的文档,因为它做的事情与你想象的完全不同:
完成这项工作。如果这个作业是由于这个调用而完成的,则结果为true,否则为false(如果它已经完成)。(...)如果作业尚未完成或已取消,则此函数将其转换为已完成状态。

相关问题