【2025最新版Kotlin教程】Kotlin第一行代码系列第十八课-协程生命周期
选学。 为什么选学呢,因为最好不要手动调生命周期来做你的逻辑。 job有生命周期
生命周期示例代码:
fun main() {
runBlocking {
/**
* 点async看下源码可以看到返回的job对象
*/
val result = async {
}
}
}
/**
* job的源码重要部分
*/
public interface Job {
public val isActive: Boolean
public val isCompleted: Boolean
public val isCancelled: Boolean
public fun getCancellationException(): CancellationException
public fun start(): Boolean
public fun cancel(cause: CancellationException? = null)
public fun cancel(): Unit = cancel(null)
public fun cancel(cause: Throwable? = null): Boolean
public suspend fun join()
public val onJoin: SelectClause0
public fun invokeOnCompletion(handler: CompletionHandler): DisposableHandle
public fun invokeOnCompletion(
onCancelling: Boolean = false,
invokeImmediately: Boolean = true,
handler: CompletionHandler): DisposableHandle
}
整个kotlin教程的源码项目结构图:
\