首页 > 解决方案 > Dart如何传递泛型函数来隔离

问题描述

有没有办法在生成时将通用函数作为参数传递给 Isolate?我附上了我的代码的简化版本(不工作),但有没有办法在没有动态的情况下存档?或者 functionToCall 的类型是在运行时而不是在编译时决定的,因此无法决定隔离?

import 'dart:isolate';

class TestClass {
  // ...
}

void main(List<String> args) {
  ReceivePort receivePort = ReceivePort();

  Isolate.spawn(functionToCall<TestClass>, receivePort.sendPort);
}

void functionToCall<T>(SendPort sendPort) {
  // ...
}

标签: dartdart-isolates

解决方案


关于泛型类型的所有内容都被称为编译的一部分,并且“具体化”了相同的信息,以便在运行时进行双重检查。


推荐阅读