WP7后台线程

时间:2011-04-25 21:56:26

标签: c# multithreading silverlight windows-phone-7

WP7中的线程是否存在于应用程序中,或者是否仅限于页面? 假设我开始在一个页面上下载,该页面正常由后台线程处理,并且状态栏正在更新其进度。现在用户希望使用该应用程序的其他方面。如果导航到另一个页面(使用应用程序栏控件或后退按钮)到应用程序中的页面,后台线程是否会死?如果没有关于专用于下载的后台线程的良好做法......比如它们是否可以存在于整个应用程序中,是否应该在启动应用程序时启动它们并使其等待下载队列排队等待请求? / p>

日Thnx
-Egon

1 个答案:

答案 0 :(得分:1)

如果您有一个专门用于下载外部资源的线程,我会在应用程序级别启动此线程。线程shoudl报告进度/完成/等。到应用程序级别对象而不是特定页面。页面shoudl查询应用程序级别对象是否需要显示详细信息。这样,页面之间的交互将不起作用,并且数据(例如下载进度)将始终可用于任何页面。

我唯一一次可以在页面级别执行此操作,如果应用程序只包含一个页面,那么这几乎是同样的事情。