如何在单独的进程中运行UWP后台任务?

时间:2017-06-06 05:32:17

标签: uwp background-process background-task

在宣布多个不同后台任务扩展的应用程序中,如何控制哪些任务可以共享托管进程以及哪些任务不能 - 为了资源分离和稳定性?

1 个答案:

答案 0 :(得分:2)

使用Extension节点上的 ResourceGroup 属性指定哪些任务可以一起运行而不是需要在单独的进程中运行:

  <Extensions>
    <Extension Category="windows.backgroundTasks" 
               EntryPoint="BackgroundTasks.SessionConnectedTriggerTask" 
               ResourceGroup="foo">
      <BackgroundTasks>
        <Task Type="systemEvent" />
      </BackgroundTasks>
    </Extension>
    <Extension Category="windows.backgroundTasks" 
               EntryPoint="BackgroundTasks.TimeZoneTriggerTask" 
               ResourceGroup="foo">
      <BackgroundTasks>
        <Task Type="systemEvent" />
      </BackgroundTasks>
    </Extension>
    <Extension Category="windows.backgroundTasks" 
               EntryPoint="BackgroundTasks.TimerTriggerTask" 
               ResourceGroup="bar">
      <BackgroundTasks>
        <Task Type="timer" />
      </BackgroundTasks>
    </Extension>
    <Extension Category="windows.backgroundTasks" 
               EntryPoint="BackgroundTasks.ApplicationTriggerTask" 
               ResourceGroup="bar">
      <BackgroundTasks>
        <Task Type="general" />
      </BackgroundTasks>
    </Extension>
    <Extension Category="windows.backgroundTasks" 
               EntryPoint="BackgroundTasks.MaintenanceTriggerTask" 
               ResourceGroup="foobar">
      <BackgroundTasks>
        <Task Type="general" />
      </BackgroundTasks>
    </Extension>
  </Extensions>