close

abstract fun close()(source)

结束并关闭此插件。

当插件被取消时,其应当立刻尝试等待并停止其所有工作、取消其内部的所有可取消的子工作, 并且释放所有资源。过程中,应当立刻生效并拒绝所有新的行为申请。

当调用 close 后,isClosed 的值立即变为 true,并进入 取消流程 。 当取消流程完全结束后,isCompleted 的值将会变为 true。而在此期间,为 正在关闭 状态。

close 视为常规完成此插件,它不会强行终止子任务,而是等待它们自然完成。 此行为近似于 Job.complete

close 应当是原子的,且可以多次调用。当调用一次后,后续的其他调用将无效, close 的实现应当尽可能地快速且避免阻塞。