Partager via


Vue d’ensemble de l’API Du coordinateur d’activité

L’API Coordinateur d’activité coordonne l’exécution de tâches différées, appelées activités, sur un système Windows.

Les activités peuvent différer leur exécution à un moment où le système est dans un état souhaité, lorsque l’exécution de la tâche n’interfère pas avec l’expérience de l’utilisateur ou les performances du système. Cela permet à la consommation totale des applications sur le système d’être répartie de manière plus uniforme entre les moments où l’utilisateur est inactif ou le système inactif. L’API fournit une coordination centralisée de ces décisions pour éviter les scénarios où les applications dégradent l’expérience utilisateur en faisant concurrence aux ressources système.

Utilisation

Les développeurs utilisent l’API en définissant des stratégies qui décrivent l’état souhaité du système pendant lequel ils souhaitent exécuter leurs activités. En s’abonnant à ces stratégies, les développeurs sont informés quand démarrer ou arrêter leur activité en fonction de la satisfaction des conditions de leur stratégie. L’API coordonne ces notifications entre les abonnements sur le système pour fournir une détermination centralisée du moment approprié pour effectuer un travail différé.

L’utilisation de l’API n’empêche pas les applications d’exécuter le travail comme bon leur semble. Il s’appuie sur eux pour être de bons citoyens, choisir des stratégies appropriées et prendre des décisions d’exécution en réponse aux notifications d’API. En outre, l’utilisation de l’API nécessite l’exécution du processus appelant. Les applications ne doivent pas s’appuyer sur l’API Du coordinateur d’activité pour un travail hautement prioritaire qui doit s’exécuter quelles que soient les conditions système.

Windows dispose de plusieurs API disponibles pour les développeurs pour le report ou la planification des tâches. Utilisez le guide suivant pour déterminer l’API qui convient le mieux à votre application.

API Usage prévu
Coordinateur d’activités Utilisez le coordinateur d’activité pour coordonner l’exécution des tâches différées en fonction des conditions système souhaitées.
Service de transfert intelligent en arrière-plan (BITS) BITS est utilisé par les programmeurs et les administrateurs système pour télécharger des fichiers à partir de ou charger des fichiers sur des serveurs web HTTP et des partages de fichiers SMB. Il prend en considération le coût du transfert, ainsi que l’utilisation du réseau afin que le travail de premier plan de l’utilisateur ait le moins d’impact possible.
Planificateur de tâches Le planificateur de tâches vous permet d’effectuer automatiquement des tâches de routine sur un ordinateur choisi. Utilisez cette API pour exécuter des tâches telles que le démarrage d’une application, l’envoi d’un e-mail ou l’affichage d’une zone de message. Les tâches peuvent être planifiées pour s’exécuter en réponse à des événements ou à des déclencheurs.

Stratégies, ressources et conditions

Les stratégies décrivent les conditions de nombreuses ressources système. Les développeurs configurent des stratégies en associant chaque ressource à une « condition » souhaitée pour commencer à utiliser cette ressource. Les conditions décrivent l’état qualitatif d’une ressource et peuvent être évaluées par des facteurs.

La combinaison de ressources et de conditions permet aux développeurs de décrire l’état souhaité du système pour s’assurer que l’exécution de leur charge de travail n’a pas d’impact négatif sur l’expérience utilisateur ou les performances du système. Comme l’état du système change constamment, l’abonnement à ces stratégies fournit des notifications indiquant quand démarrer ou arrêter le travail selon que la stratégie est satisfaite (ouverte) ou non satisfaite (fermée).

Modèles de stratégie

Les modèles de stratégie permettent aux développeurs de configurer leurs stratégies avec des conditions de ressources prédéfinies conçues pour répondre aux besoins de la plupart des applications. Un modèle de stratégie est requis lors de la création d’une stratégie et est utilisé comme point de départ pour configurer des stratégies spécifiques aux besoins du développeur. Un modèle de stratégie vide est fourni aux développeurs qui souhaitent un contrôle total sur leur stratégie.

API et terminologie du coordinateur d’activité

Choix de la stratégie de coordinateur d’activité appropriée

Exemple de projet du coordinateur d’activité