Porter une tâche en arrière-plan hors processus vers une tâche en arrière-plan in-processPort an out-of-process background task to an in-process background task

La façon la plus simple de porter votre activité d’arrière-plan de la programmation en dehors des processus (OOP) vers l’activité en cours consiste à placer votre code de méthode IBackgroundTask. Run dans votre application et à le lancer à partir de OnBackgroundActivated.The simplest way to port your out-of-process (OOP) background activity to in-process activity is to bring your IBackgroundTask.Run method code inside your application, and initiate it from OnBackgroundActivated. La technique décrite ici ne consiste pas à créer un shim à partir d’une tâche en arrière-plan OOP vers une tâche en arrière-plan in-process. Il s’agit de réécrire (ou de déplacer) une version OOP vers une version in-process.The technique being described here is not about creating a shim from an OOP background task to an in-process background task; it's about rewriting (or porting) an OOP version to an in-process version.

Si votre application comporte plusieurs tâches en arrière-plan, l’exemple d’activation en arrière-plan montre comment vous pouvez utiliser BackgroundActivatedEventArgs.TaskInstance.Task.Name pour identifier la tâche qui est lancée.If your app has multiple background tasks, the Background Activation Sample shows how you can use BackgroundActivatedEventArgs.TaskInstance.Task.Name to identify which task is being initiated.

Si vous êtes en train de communiquer entre les processus en arrière-plan et au premier plan, vous pouvez supprimer ce code de communication et de gestion de l’état.If you are currently communicating between background and foreground processes, you can remove that state management and communication code.

Types de déclencheur et tâches en arrière-plan qui ne peuvent pas être convertisBackground tasks and trigger types that cannot be converted

  • Les tâches en arrière-plan intégrées au processus ne prennent pas en charge l’activation d’une tâche VoIP en arrière-plan.In-process background tasks don't support activating a VoIP background task.
  • Les tâches en arrière-plan in-process ne prennent pas en charge les déclencheurs suivants : DeviceUseTrigger, DeviceServicingTrigger et IoTStartupTaskIn-process background tasks don't support the following triggers: DeviceUseTrigger, DeviceServicingTrigger and IoTStartupTask