pause 方法

Capability pause(
  1. [Capability? resumeCapability]
)

请求暂停独立进程。

当独立进程接收到暂停命令时,它将停止从事件循环队列处理事件。它可能会因为例如计时器或接收端口消息等,向队列中添加新事件。当独立进程恢复时,它开始处理已入队的事件。

暂停请求通过独立进程的命令端口发送,绕过接收独立进程的事件循环。当收到请求时,立即生效,暂停当前事件循环。

使用 resumeCapability 来标识暂停,并且必须在使用 resume 恢复时再次使用。如果省略了 resumeCapability,则创建并使用新创建的能力对象。

如果使用同一能力对象暂停了多个独立进程,只需使用该能力对象恢复一次即可结束暂停。

如果使用多个能力对象暂停了独立进程,则必须分别结束每个暂停,然后才能使独立进程恢复。

返回必须用于结束暂停的能力。这可能是 resumeCapability,或者在省略 resumeCapability 时创建的新能力。

如果 pauseCapabilitynull 或它不是通过 controlPort 识别的独立进程的暂停能力,接收独立进程将忽略暂停请求。

实现

Capability pause([Capability? resumeCapability]) {
  resumeCapability ??= Capability();
  _pause(resumeCapability);
  return resumeCapability;
}