【发布时间】:2019-10-08 07:26:20
【问题描述】:
当我尝试在隔离内使用流时,我遇到了一个奇怪的问题, 如果我尝试这样的事情
main() async {
await Isolate.spawn(entryPoint, null);
}
entryPoint(SendPort sendPort) {
getStreamOfNumbers().listen((data) => print('data : $data'));
}
Stream<int> getStreamOfNumbers() async* {
for (int x = 0; x < 10; x++) yield x;
}
没有任何东西打印到控制台中,但是如果我在主方法中添加一个接收端口,它就可以正常工作 ,即使我不使用接收端口
main() async {
ReceivePort receivePort = ReceivePort();
await Isolate.spawn(entryPoint, null);
}
//the output is :
//data : 0
//data : 1
//data : 2
//data : 3
//data : 4
//data : 5
//data : 6
//data : 7
//data : 8
//data : 9
这是一个错误还是我有什么问题?
【问题讨论】:
标签: dart stream stdin dart-isolates