用 StreamController(流水线控制器)可以管理控制一条 Stream。 我们先创建一个流水线控制器,类型是 StreamController
现在如果想要订阅一下这个控制器管理的流水线,可以用一下 它的 stream 上面的 listen 这个方法,用一下 vehicleStreamController.stream.listen,把处理数据用的方法交给它,然后添加一个 onError 参数,值是 onErrorVehicle 。
想要往控制器控制的流水线上添加数据可以使用控制器上的 add 这个方法,用一下 vehicleStreamController.add ,添加一个字符串类型的数据。
流水线上发生的错误可以使用控制器的 addError 添加,用一下 vehicleStreamController.addError,新建一个 Exception,提供一个字符串数据。
运行一下应用,你会发现在控制台上会先输出一个汽车表情符号,这是用流水线控制器的 add 方法添加到流水线上的数据,处理数据的方法会把数据输出到控制台上。
然后又输出了一个 Exception ,一座火山,这是用流水线控制器的 addError 往流水线上添加的错误,流水线的错误处理方法会把发生的错误输出到控制台上。