Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/dart/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Flutter 取消Flatter中的StreamSubscription_Flutter_Dart_Dart Stream - Fatal编程技术网

Flutter 取消Flatter中的StreamSubscription

Flutter 取消Flatter中的StreamSubscription,flutter,dart,dart-stream,Flutter,Dart,Dart Stream,我有以下流订阅 Stream<Uint8List> stream = await USBSerialSingleton.instance.inputStream; usbStream = stream.listen(onDataReceivedFromUSBSerial); 我想停止听小溪,所以我打电话来 usbStream.cancel(); 但我一直通过我的onDataReceivedFromUSBSerial方法接收消息。即使我关闭了实现所有这些的对话框,我也会在从USBS

我有以下流订阅

Stream<Uint8List> stream = await USBSerialSingleton.instance.inputStream;
usbStream = stream.listen(onDataReceivedFromUSBSerial);
我想停止听小溪,所以我打电话来

usbStream.cancel();
但我一直通过我的
onDataReceivedFromUSBSerial
方法接收消息。即使我关闭了实现所有这些的对话框,我也会在从USBSerial接收的数据上不断收到消息


问题:如何停止收听我的
usbStream

您必须等待订阅取消,因此请执行以下操作:

await usbStream.cancel();

你所做的看起来是正确的。你确定你取消的订阅是正确的
usbStream
订阅吗?@pskink知道我的订阅为什么没有取消吗?@lrn是的,非常确定。试试
等待usbStream.cancel()@dev aentgs Yeh,有数据来自连接。一旦我结束对话,我就不需要听数据了。
await usbStream.cancel();