2

我有一个listboxload images dynamically from the web as user scrolls。将其视为无限卷轴。我当前的display size is 72X72. 但是,如果我increase the display size to 288x288 (4 times)在滚动应用程序几分钟后退出给出outofmemory system error. 它已经开始经常出现在我512MB device的大图像上。这让我很担心,因为它会在设备上发生得更快256 MB。如何处理 try catch 不处理这些系统错误的情况?most optimum处理如此庞大的图像列表的方法是什么?

4

2 回答 2

2


我也经历过 WP7 或 WP7.5 的这个问题。

Windows phone 7 中的图像存在一个巨大的问题。
当从独立存储作为流读取并设置为位图类对象的源时,大小为 900kb 的图像比你会看到内存使用量发生巨大变化/上升(在我的案例 5-6MB)。

只要浏览这个网站,你就会明白其余的。
Silverlight-s-big-image-problem-and-what-you-can-do-about-it

对于长图像列表问题
1. 缩小从服务器获取的图像。
2. 使用LongListSelector 工具使用数据虚拟化技术列出图像

于 2012-10-18T12:48:31.553 回答
0

您可以使用 Jeff Wilcox MemoryDiagnosticHelper来控制内存使用情况。如果大约 90 mb,您可以运行图像清理过程。Image.Source = null只需为用户目前看不到的图像卸载 BitMaps ( )。

压缩图像也是一种很好的做法(例如使用服务器端压缩)。

于 2012-10-18T07:50:59.387 回答