Windows 通用应用程序在暂停事件时中断所有计时器

Posted

技术标签:

【中文标题】Windows 通用应用程序在暂停事件时中断所有计时器【英文标题】:Windows Universal App break all timers on suspended event 【发布时间】:2016-09-24 01:59:28 【问题描述】:

在我的应用程序中,我使用多个计时器来支持特定的业务逻辑。像这样: ScheduleRepeatTimerAction(() => if(_condition) ShowSystemToast(); , 1000);

如果指定条件为真,我必须为用户显示 SystemToast(LocalPushNotification)。

应用暂停事件中的一般问题。 应用程序移至暂停状态(应用程序移至后台)后,应用程序逻辑计时器已停止,并且在应用程序未恢复时,Toast 从未显示。

如何唤醒处于挂起状态的应用程序逻辑的计时器?

【问题讨论】:

【参考方案1】:

这就是您对application lifecycle management 的期望。

如果它被挂起,那么应用程序将不再运行和使用系统资源。

请尝试使用background tasks 做同样的事情。这些将允许您的应用程序运行代码,即使它没有被执行。

请记住,background task 不保证会执行,因为存在诸如 CPU 时钟时间使用和用户权限等限制。

【讨论】:

以上是关于Windows 通用应用程序在暂停事件时中断所有计时器的主要内容,如果未能解决你的问题,请参考以下文章

跳转到应用程序时中断不起作用(STM32)

在代码执行进入 Dll 或 Lib 空间时中断

接口测试

ACF 页面 while 循环在循环时中断页脚

如何在用户输入时中断 ocaml 程序

Vue切换页面时中断axios请求