我的 silverlight 应用程序遇到了一些问题。
我的应用程序看起来像一个图像管理器。您可以打开一些图像、编辑、查看等。
我的问题是,当您添加一些图像并删除这些图像后,内存不会恢复到添加这些图像之前使用的相同数量。如果您重复这些操作(添加图像并在删除这些图像之后),内存不会停止上升。
为什么会发生?
我创建了一个新的 silverlight 5 项目来重新创建这个场景,测试一些代码并尝试找出正在发生的事情。
在新项目中,我有一个 StackPanel 和 3 个具有以下操作的按钮:
1- 在 StackPanel 中添加 1000 个按钮;
2- 删除 StackPanel 的所有孩子;
3-调用GC.Collect;
我重复调用相同的动作:add(1)、remove(2)、call GC(3)
在我重复了几次相同的操作(添加和删除)之后。我观察到我的第一个应用程序的相同结果,内存不会停止上升。即使在我调用 GC.Collect 之后,内存也不会被释放。我现在不知道发生了什么。是否可能是silverlight的内存泄漏?