MVVMCross - SqlBits内存泄漏

时间:2012-07-31 08:09:42

标签: xamarin.ios mvvmcross

我们正在开发一个类似于SqliBits样本的MVVMCross Monotouch应用程序(UINavigationCOntroller有一个标签控制器,在标签控制器内部还有另一个导航控制器)。似乎内存已分配但从未发布。

要重现此错误,请使用探查器选择“会话”选项卡启动SqliBits示例,然后选择一天返回,选择一天返回,...然后查看内存分配,您将看到内存已分配但从未放过。

我可以附加图像,但重现错误相当容易。

此致 丹

1 个答案:

答案 0 :(得分:0)

作为一个问题,已在https://github.com/slodge/MvvmCross/issues/19

上讨论过这个问题

当内存不足时,iOS只会释放视图(通过View Controller ViewDidUnload方法) - 在模拟器中,这可以从硬件菜单中人工创建。

除此之外,还有一个小内存泄漏,看起来像是由RelayCommand中Action字段中对ViewModel的引用引起的。我不完全清楚是什么造成了这种情况,但是将Dispose方法添加到RelayCommand,这使得这个Action无效似乎已经解决了这个问题(参见https://github.com/slodge/MvvmCross/commit/8fc1af3fc9960445b5358daf8111f6bc9683b907