performance - 如何高效地 Navigator.push 内存 Flutter

标签 performance flutter memory memory-management memory-leaks

我的应用程序的屏幕是 NetworkImages 的全屏 GridView,每次单击图像时,它都会将您带到一个包含另一个图像 GridView 的新页面。我遇到了内存问题并且应用程序崩溃了,因为每次我 Navigator.push 一个新页面时,上一页上的图像仍然保存在内存中,导致内存泄漏。我需要保留页面的完整历史记录,用户需要返回。有没有办法在调用 Navigator.push 时从内存中释放图像,并在有 Navigator.pop 事件时重建它们?我试过使用 CachedNetworkImage 和 OptimizedCachedImage,但两者都会导致更多的内存问题。

这是显示问题的要点:https://gist.github.com/Sofianel5/3b29e15024b902f6f04ce2f84598171c

最佳答案

确保你在每个页面中调用 dispose 函数

  @override
  void dispose(){
   super.dispose();
  }

关于performance - 如何高效地 Navigator.push 内存 Flutter,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/66486247/

相关文章:

flutter - 如何在下面的橙色矩形中居中放置标签?

ios - GDB 转储内存 .bin 文件为空

c - 堆栈变量是否在虚拟内存中连续分配?

.net - WCF的内部限制是什么

mysql - 从 MySQL 迁移到 MariaDB 后 Prestashop 搜索速度变慢

flutter - 更改FLUTTER中TextFormField的默认边框颜色

dart - 检查应用程序是否首次使用 Flutter 运行

javascript - 在它变得粗鲁之前有多少内存?

performance - 防止 OpenJPA N+1 在 map 上选择性能问题

performance - 高流量 Web 应用程序的最佳扩展方法?