kotlin 协程之Job对象

  • 对于一个创建的协程(通过launch或者async),会返回一个Job实例,该实例是协程的唯一标示,并且负责管理协程的生命周期
  • 一个任务可以包含一系列状态:新创建(New)、活跃(Active)、完成中(Completing)、已完成(Completed)、取消中(Cancelling)和已取消(Cancelled)。虽然我们无法直接访问这些状态,但是我们可以访问Job的属性:isActive、isCancelled和isCompleted。
    -如果协程处于活跃状态,协程运行出错或者调用job.cancel()都会将当前任务置为取消中(Cancelling)状态(isActive=false,isCancelled=true)。当所有的子协程都完成后,协程会进入已取消(Cancelled)状态,此时(isCompleted=true)


    image.png
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容