【发布时间】:2019-09-30 06:08:24
【问题描述】:
虽然生命周期等很好地解释了 UWP 应用程序的生命周期管理,但我无法找到有关 UWP services 的可靠信息。
关于UWP services 有一篇很细的文章。其他一些信息是here。
基本上它们是作为后台任务实现的,可以是进程内或进程外的。
虽然节省电池能量是这些生命周期概念中的主要设计意图,但我正在寻找一种方法来创建保证运行且永不终止的服务。
一个选项是windows service,但我正在评估当前是否可以生成一个没有前台活动并使用操作系统机制来确保后台服务永远运行的 uwp 服务。
有些事情表明这是不可能的,比如
CPU 配额:后台任务受挂钟数量的限制 他们根据触发器类型获得的使用时间。 大多数触发器都是有限的 到 30 秒的挂钟使用,而一些有能力运行 最多 10 分钟以完成密集任务。背景 任务应该是轻量级的,以节省电池寿命并提供更好的 前台应用程序的用户体验。请参阅支持您的应用程序 应用于后台的资源约束的后台任务 任务。
我对后台进程的要求是在任何情况下都不能终止后台服务(例如,它提供关键功能)。 此外,该服务应该为一组独立的 UWP 应用程序提供功能(这就是我关注 UWP 服务的原因)
(我知道对于 UWP,定义的行为已经并且将来可能会改变。)
【问题讨论】:
-
尝试寻找 wcf 服务。它们可能是您正在寻找的东西。
标签: c# service uwp windows-10