如何批量限制事件?

2023-12-20

如何批量限制事件?比方说,我想在用户输入时触发文件保存,但执行文件系统访问的频率不超过每 100 毫秒一次?

块事件处理程序示例:

on<StoreFile>(_handleStoreEvent);

每个处理程序都有一个可选的transformer:可以进行节流(以及更多)的字段。

Using rxdart https://pub.dev/packages/rxdart您可以自己实施限制:

on<StoreFile>(
  _handleStoreEvent,
  transformer: (events, mapper) => events.throttleTime(Duration(milliseconds: 100)).switchMap(mapper),
);

我写了bloc_event_transformers https://pub.dev/packages/bloc_event_transformers包进行流行的转换,如节流和去抖,以减少我的应用程序中的样板文件。可以这样使用:

on<StoreFile>(
  _handleStoreEvent,
  transformer: throttle(Duration(milliseconds: 100)),
);
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何批量限制事件? 的相关文章

随机推荐

  • 如何使用 void 通用指针用值填充数组?

    给出以下方法 void fillArray void arr int const numElements void val int size 如何填充数组 arr 的值为 val 不知道数组是什么类型 numElements是数组中元素的数
  • 无法激活 NavigationPageRenderer 类型的实例

    我有一个 MasterDetailPage 该页面被推送到导航 await MainPage Navigation PushAsync new MasterDevicePage 当主设备页面加载时 主页面的列表视图将选择其中一个页面并将其显
  • ParameterizedType 并创建通用 dao

    我尝试这个通用代码是因为我不想为数据库中的每个实体创建一个 dao 类 因为我有 80 个专门为那些我将执行 CRUD 查询的实体创建的 dao 类 因为在大多数情况下我只需要坚持或通过 id 进行查找 public interface G
  • 如何在lines()中添加其他字符,例如箭头?

    这个问题解释了如何使用lines 制作不同的线型 如何在R中为图形定义更多线型 https stackoverflow com questions 25788945 how to define more line types for gra
  • 为什么 eclipse 会创建 .settings 目录?

    我注意到 eclipse 最近创建了一个 settings 目录 里面有 1 个文件 我想知道是否应该将其添加到版本控制中 SVN 另外 这是新的吗 我已经使用eclipse很长一段时间了 但从未注意到它 目录中文件的内容是这样的 Sun
  • 如何在 JavaScript 中向 MVC 模型添加项目?

    我想使用 java 脚本动态地将项目添加到模型中的列表中 如何使 MVC 将新项目绑定到模型 我的模型 public class Garage public string Name get set public string Locatio
  • VBA 变量何时实例化

    我很犹豫要不要问 但我找不到任何文档for VBA 相关 但我不认为是骗人的 C 全局变量什么时候创建 https stackoverflow com questions 19618801 when are global variables
  • 如何忽略 PostgreSQL 窗口函数中的空值?或返回列中的下一个非空值

    假设我有下表 User id COL1 COL2 1 1 1 2 1 2421 1 1 1 3542 2 1 我需要另一列指示每行的下一个非空 COL1 值 因此结果如下所示 User id COL1 COL2 COL3
  • 发生未处理的异常:项目目标不存在

    我写的时候遇到一个问题 ionic cordova prepare android 知道我创建的每个新项目都会发生这种情况 请帮忙 该问题是由缺少所需的构建器引起的angular json文件 要安装这些构建器 请运行 ng add ion
  • Django Tastypie:“通过”关系实现多对多

    我已经对这个问题进行了很多搜索 并在 Stack Overflow 上浏览了一堆相关问题 但似乎没有关于如何 通过 中间模型 或者可能是 实现多对多关系的明确答案我错过了它 我有一个名为 Sample 的模型 它与 Region 具有多对多
  • 如何将 cex 中的点大小转换为绘图单位?

    我试图计算出图中 x 和 y 方向上的点的半径有多大 它们的大小由cex 我想创建一个需要这些信息的绘图函数 在我看来好像cex这将是一个神奇的参数 但没有人真正知道它到底会做什么 我正在创建一个情节png功能 我设置了图表的宽度和高度 我
  • 在cygwin中运行并编译java代码

    我刚刚安装cygwin我想知道如何编译和运行我的java代码cygwin 我的 java 代码在我的桌面上保存在名为 Java 的文件中 假设您安装了适用于 Windows 的 Java SDK 在最简单的情况下 确保 将 java 添加到
  • Flutter:关于数据更改的 Firebase 推送通知

    收到评论后 我已将以下代码部署到我的 firebase 项目中 并且已成功部署 但没有向我发送任何通知 请在此处查看我的 Firebase 实时数据库屏幕截图 以便更好地理解 现已解决 它将仅向一个 ID 即我的管理设备 发送通知 工作代码
  • 将弱学习器组合成强分类器

    如何将少数弱学习器组合成一个强分类器 我知道公式 但问题是 在我读过的每一篇关于 AdaBoost 的论文中 只有公式 没有任何示例 我的意思是 我的学习器和权重都很弱 所以我可以按照公式告诉我的去做 将学习器乘以它的权重 然后加上另一个乘
  • 具有命令绑定的多个参数

    我有一个带有命令绑定并使用 Prism 库的文本块 这是 XAML 部分
  • 关于C# Expression.MakeBinary(),如何使用

    About Expression MakeBinary BinaryExpression MakeBinary ExpressionType binaryType Expression left Expression right bool
  • 如何在SQL SERVER中使用sqb文件恢复数据库

    我有一个带有 sqb 扩展名的文件 例如 clark sqb 我应该如何使用 sqb 文件恢复数据库 谢谢 SQB 文件是使用 RedGate 的 SQL 备份工具创建的 他们提供了一个名为的命令行工具sqb2mtf可用于转换为本机 SQL
  • Java 8 接口中静态方法的用途是什么?

    为什么 Java 8 支持静态方法 下面代码中 main 方法中的两行有什么区别 package sample public class A public static void doSomething System out println
  • 无法加载文件或程序集“Microsoft.Practices.Unity”

    我正在尝试升级Unity版本 2 1 505 2 但是当我运行该应用程序时 我得到以下信息FileLoadException 无法加载文件或程序集 Microsoft Practices Unity 版本 2 0 414 0 文化 中性 P
  • 如何批量限制事件?

    如何批量限制事件 比方说 我想在用户输入时触发文件保存 但执行文件系统访问的频率不超过每 100 毫秒一次 块事件处理程序示例 on