【问题标题】:working with images in windows phone app - performance在 Windows Phone 应用程序中处理图像 - 性能
【发布时间】:2012-05-09 19:07:08
【问题描述】:

我有一个应用程序允许用户拍照并将它们存储在独立存储中。然后检索这些图像以将它们显示在列表中。当列表中有超过 30 张图像时,该应用程序会出现性能问题。从存储中检索这些图像并将它们绑定到列表需要很长时间。很多时候,应用程序只是被操作系统关闭,因为它需要太长时间。

此外,我认为随着分辨率更高的设备进入市场,图像尺寸越来越大,对性能的影响也越来越大。

我需要一些有关如何解决此问题的指导。我有几件事: 1)如何异步检索要从 IS 检索的每个图像,以便页面可以加载,但图像是以异步方式检索的。任何示例代码表示赞赏。 2) 另一种方法是在存储原始照片的同时创建实际照片的缩略图照片(较小的尺寸和分辨率),然后使用此缩略图照片绑定到列表。如果应该这样做,那么我应该如何动态处理图像以创建原始照片的较小尺寸的缩略图版本。

也欢迎任何其他想法。 感谢您的宝贵时间。

【问题讨论】:

  • 应用被关闭的原因更可能是内存问题,而不是应用耗时过长

标签: windows-phone-7 image-processing


【解决方案1】:

如果可以的话,我建议使用Async CTP 并使从隔离存储中加载图像的代码异步。生成缩略图的方法也可以是异步的。

如果您无法做到这一点(将这些依赖项添加到您的项目中),请使用 BackgroundWorker。也许this 文章可以帮助您入门。

这将允许您的 UI 在后台线程上继续处理时做出响应。

【讨论】:

    【解决方案2】:

    不要将独立存储伪装成 SQL Server。会有很大的性能差异。如果您要处理的数据过多,请将它们发送到服务器。

    但是,有一种获取缩略图的方法。你可以使用它:

    http://msdn.microsoft.com/en-us/library/system.drawing.image.getthumbnailimage.aspx

    另外,请检查这个答案:

    Create thumbnail image

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-09-08
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-02-26
      • 1970-01-01
      相关资源
      最近更新 更多