Attendu "Bonjour tout le monde" à partir du code isolate simple illustré ci-dessous & ne fonctionnait pas.Le code d'isolement n'a pas fonctionné comme prévu
import 'dart:async';
import 'dart:isolate';
var mainReceivePort = new ReceivePort();
main() async {
await Isolate.spawn(hello, null);
await for (var msg in mainReceivePort) {
print(msg);
return;
}
}
hello(_) async {
var sendPort = mainReceivePort.sendPort;
sendPort.send("Hello world");
}
Lorsque suivants modifications ont été apportées au code, il fonctionne comme prévu
import 'dart:async';
import 'dart:isolate';
var mainReceivePort = new ReceivePort();
main() async {
await Isolate.spawn(hello, mainReceivePort.sendPort);
await for (var msg in mainReceivePort) {
print(msg);
return;
}
}
hello(sendPort) async {
sendPort.send("Hello world");
}
Vous cherchez des indices. Des pensées?
Qu'est-ce que "ne fonctionne pas" signifie exactement? Quel est le comportement attendu? Quel est le comportement réel? –
Pourquoi attendez-vous le premier exemple, où vous passez 'null' au lieu de' mainReceivePort.sendPort', pour fonctionner? –