Loading

wp7 应用程序优化

wp中有两个主要线程:一个是UI线程(UI Thread),另一个是构图线程(Composition Thread),另外是后台线程(Background Thread)

1.UI线程

  UI线程是Sl for wp的主线程。负责:

    1)解析XAML中元素创建对象。2)绘制第一次呈现的视觉效果3)处理回调执行代码

2.构图线程

  由UI线程处理的一些工作,提高SL的性能。

    1)合成图形纹理交给GUI处理。2)处理简单动画3)处理不透明蒙版or矩形。

3.后台线程

  为了避免阻碍UI线程,影响用户的操作,可以在后台线程中去处理一些异步的操作。如 :定位服务 推送通知 

    Deployment.Current.Dispatcher.BeginInvoke(() => MyThreadChanged(e));

资源优化

  1.图片资源 .jpg解码速度快,但不能显示透明.png解码相对较慢,显示透明。 .gif http://imagettools.codeplex.xom

  2.使用blend 工具。

  3.图像大小一般都限制在2000*2000以内。

  4.媒体文件一般都以Content属性打包xap。

  5.可控制控件的隐藏Visibility=Collapsed or Opacity=0

  6.建议使用Sl toolkit 中的PerformanceProgressBar ,为了将动画从UI线程移动到构图线程里。

其他优化

  1.网络请求类优化。如果使用返回的数据去更新在UI线程执行的元素,可使用

    Deployment.Current.Dispatcher.BeginInvoke(() => MyThreadChanged(e));  方法将数据传递到UI线程,实现跨线程操作。

  2.初始屏幕。

  3./Images/hell.png

  4.不要讲本地化资源包含在主程序中,设置多个不同的语音程序集

  5.减少构造函数及load事件

 

posted @ 2013-01-14 15:32  androllen  阅读(355)  评论(0编辑  收藏  举报