有啥方法可以控制领域发布者的频率吗?
Posted
技术标签:
【中文标题】有啥方法可以控制领域发布者的频率吗?【英文标题】:Is there any method to control the frequency of the realm publisher?有什么方法可以控制领域发布者的频率吗? 【发布时间】:2022-01-16 09:43:32 【问题描述】:我的视图显示订阅到领域发布者的一些数据。因此,如果我在领域数据库中插入一些新对象,领域发布者将向订阅者发送一个新数据列表,并且视图将被刷新。
问题是当我在领域数据库中插入 N 个数据时,发布者将为每个插入的对象向订阅者发送一个新的数据列表。结果,视图将被刷新 N 次,这将导致 CPU peek。
有什么方法可以控制realm发布者的频率吗?
谢谢
【问题讨论】:
您是在单个事务中进行写入(写入闭包)还是进行多次写入,例如每个对象一次写入?你有一些示例代码吗?请花点时间查看How to create a Minimal, Reproducible Example 请提供足够的代码,以便其他人更好地理解或重现问题。 @Jay 感谢您的洞察力,我尝试在一个写入事务中写入多个对象,它解决了我的问题。真的谢谢! 【参考方案1】:在领域发布者之后立即添加debounce
。我会将其设为 0.25 或 0.5 去抖动。
【讨论】:
我认为 OP 需要使用消除问题的事务。去抖动会很困难,因为他一次只写一个对象。以上是关于有啥方法可以控制领域发布者的频率吗?的主要内容,如果未能解决你的问题,请参考以下文章
有啥实用的方法可以在组件中调用“React.createContext()”吗?