Isolate 构造函数

Isolate(
  1. SendPort controlPort, {
  2. Capability? pauseCapability,
  3. Capability? terminateCapability,
})

创建一个新的具有受限能力集的 Isolate 对象。

端口号应该是 Isolate 的控制端口,如从另一个 Isolate 对象获取。

能力应该是原始 Isolate 可用能力的子集。Isolate 的能力被锁定到该 Isolate,在别处没有效果,因此能力应来自与控制端口相同的 Isolate。

也可以用于从一个控制端口和任何可用的能力创建 Isolate 对象,这些能力是通过 SendPort 发送的。

示例

Isolate isolate = findSomeIsolate();
Isolate restrictedIsolate = Isolate(isolate.controlPort);
untrustedCode(restrictedIsolate);

此示例创建一个新的 Isolate 对象,无法用于暂停或终止 Isolate。所有不受信任的代码能做的就是检查 Isolate 并查看未捕获的错误或当它终止时。

实现

Isolate(this.controlPort, {this.pauseCapability, this.terminateCapability});