【发布时间】:2021-10-01 05:18:50
【问题描述】:
我是 dart 和 Flutter 的新手,很想就我面临的算法问题获得一些建议。
我想将我的 Flutter 应用程序连接到蓝牙设备(该部分已完成,我已经连接)并以不均匀的间隔发送消息。我有一个列表中的消息,对于每个消息,我都知道我想在什么时间(毫秒)发送消息。
所以假设下面的消息是一字排开的:
-
start0 毫秒 -
init_app100 毫秒 -
user_pick_x500 毫秒 -
user_start_x500ms (将在user_pick_x之后发送,应保证订单) -
interrupt3500 毫秒
我找到了创建流的文档,但它总是谈论单个间隔值。 https://dart.dev/articles/libraries/creating-streams.
想法:
- 从技术上讲,我可以传入
Duration对象列表,并使用自定义生成器async*以及消息字符串。 - 或者,我可以将时间间隔设置为最低时间增量,并检查每个时间间隔是否应发送消息。在示例的情况下,每 100 毫秒。
如果能够暂停/取消流也很好。这是流本身可以做的事情。
【问题讨论】:
标签: flutter dart dart-stream