我有一个 WP7 应用程序,有时必须进行长时间(5-25 秒)的处理。
使用 Mango,当应用程序在处理过程中设置为休眠状态时(例如:用户按下 Windows 按钮或锁定屏幕),当用户返回时,应用程序崩溃。
我在模拟器和我的设备上试过,同样的行为。
如果我在 Visual Studio 的调试模式下重现它,它不会崩溃,因此很难找到真正发生的事情。
要重现它,请启动一个新的 Windows Phone 项目,在 MainPage.xaml 上添加一个按钮并在执行无限循环的 click 事件上添加一个事件处理程序:
while (true)
{
System.Threading.Thread.Sleep(100);
}
我的问题是:到底发生了什么?为什么会崩溃?快速应用程序切换不应该只是暂停应用程序进程并恢复它吗?
编辑:我注意到的另一件事是,在运行繁重的进程时,当我离开/进入应用程序时,似乎没有引发停用和激活的事件。