real-time - 有什么办法可以将 Redux 中的状态设为 "commit"以释放内存?

标签 real-time redux 2d-games

我正在处理 a real-time multiplayer game我在服务器和客户端都使用 Redux 来存储应用程序的状态。

但是,由于我的游戏是实时的,因此发送到商店的操作量明显高于通常的应用程序。我怀疑这就是 Redux 使用大量内存的原因。

据我了解,Redux 将所有分派(dispatch)到内存中的操作存储到内存中,以便能够执行其“time traveling”。我还注意到 Redux DevTools允许你提交状态。

我想做的是提交应用程序,例如每 10 秒以节省内存。无论如何,我从来不需要在我的应用程序中返回超过 10 秒,因此存储所有操作似乎是不必要的,即使是出于调试目的。

Redux 支持这个吗?如果没有,有没有办法实现这种行为?

先感谢您!

最佳答案

请注意,虽然 Redux DevTools 确实存储了启用时间旅行调试功能的操作历史记录,但 Redux 本身没有 - 它只保留对当前状态的引用。由于呈现操作列表和存储内容,DevTools 也有一些额外的开销。

除此之外:是什么让你说 Redux “使用大量内存”? Redux 使用的唯一内存是表示存储状态所需的内存。除非您有一些实际显示内存问题的特定基准,否则我不会认为这是一个有意义的问题。

关于real-time - 有什么办法可以将 Redux 中的状态设为 "commit"以释放内存?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35627553/

相关文章:

javascript - combineLatest<{ [id : string]: Book }, string[]> 这是什么?

javascript - react redux 架构表操作和缩减器

javascript - 在 Hangman TypeScript 游戏结束时一次显示一个下划线

sprite-kit - 如何创建SKSpriteNode的图像?

c++ - 如何降低QT Gui线程优先级?

php - 使用 Javascript 实时读取 PHP 数组的结果

一次仅向一名用户(而非 channel )实时推送更新。怎么做?

bash - 告诉 nohup 实时写入输出

javascript - 用给定的数组 react redux 合并状态

javascript - 使用按键vanilla javascript动态移动div