structured_task_group::run_and_wait, méthode
Planifie une tâche devant s'exécuter inline dans le contexte d'appel avec l'assistance de l'objet structured_task_group pour une prise en charge complète de l'annulation.Si un objet task_handle est passé comme paramètre à run_and_wait, l'appelant est responsable de la gestion de la durée de vie de l'objet task_handle.La fonction attend ensuite que tout le travail sur l'objet structured_task_group soit terminé ou ait été annulé.
template<
class _Function
>
task_group_status run_and_wait(
task_handle<_Function>& _Task_handle
);
template<
class _Function
>
task_group_status run_and_wait(
const _Function& _Func
);
Paramètres
_Function
Le type de l'objet de fonction qui sera appelé pour effectuer la tâche._Task_handle
Handle à la tâche qui sera exécutée inline sur le contexte d'appel.Notez que l'appelant est responsable de la durée de vie de cet objet.Le runtime continuera à attendre qu'il vive jusqu'à ce que la méthode run_and_wait finisse l'exécution._Func
Fonction qui sera appelée pour appeler le corps du travail.Il peut s'agir d'un objet lambda ou d'un autre objet qui prend en charge une version de l'opérateur d'appel de fonction avec la signature void operator()().
Valeur de retour
Indique si l'attente a été respectée ou si le groupe de tâches a été annulé, en raison d'une opération d'annulation explicite ou d'une exception levée par une de ses tâches.Pour plus d'informations, consultez task_group_status
Notes
Notez qu'une ou plusieurs des tâches planifiées pour cet objet structured_task_group peuvent s'exécuter inline dans le contexte d'appel.
Si une ou plusieurs des tâches planifiées pour cet objet structured_task_group lève une exception, le runtime choisira une exception de ce type et la propagera hors de l'appel à la méthode run_and_wait.
Une fois cette fonction retourne la valeur, l'objet d' structured_task_group est considéré comme dans un état final et ne doit pas être utilisé.Notez que son utilisation après le retour de la méthode run_and_wait provoquera un comportement indéfini.
Dans le chemin d'accès d'exécution non exceptionnel, vous avez un mandat pour appeler cette méthode ou la méthode wait avant que le destructeur du structured_task_group ne s'exécute.
Configuration requise
En-tête : ppl.h
Accès concurrentiel del'espace de noms :
Voir aussi
Référence
structured_task_group::run, méthode
structured_task_group::wait, méthode