注意 isolate 開啟的線程不能在類里面侵贵,不然就是主線程了
///發(fā)送guid
void startDownLoad(String guid) async {
ReceivePort receivePort = ReceivePort();
receivePort.listen((message) {
if(message is SendPort){
message.send(guid);
} else {
print("message=====$message");
}
});
await Isolate.spawn(dataLoader, receivePort.sendPort);
}
void dataLoader(SendPort sendPort) {
final receivePort2 = ReceivePort();
sendPort.send(receivePort2.sendPort);
receivePort2.listen((message) {
if (message is String) {
print("message=====$message");
if (message == 'send') {
sendPort.send("get");
}
}
});
}
dataLoader 必須是頂層函數(shù)