Namespaces
Variants

std:: launch

From cppreference.net
Concurrency support library
Threads
(C++11)
(C++20)
this_thread namespace
(C++11)
(C++11)
Cooperative cancellation
Mutual exclusion
Generic lock management
Condition variables
(C++11)
Semaphores
Latches and Barriers
(C++20)
(C++20)
Futures
(C++11)
(C++11)
(C++11)
launch
(C++11)
Safe reclamation
Hazard pointers
Atomic types
(C++11)
(C++20)
Initialization of atomic types
(C++11) (deprecated in C++20)
(C++11) (deprecated in C++20)
Memory ordering
(C++11) (deprecated in C++26)
Free functions for atomic operations
Free functions for atomic flags
Défini dans l'en-tête <future>
enum class launch : /* unspecified */ {

async = /* unspecified */ ,
deferred = /* unspecified */ ,
/* implementation-defined */

} ;
(depuis C++11)

std::launch est un BitmaskType . Il spécifie la politique de lancement pour une tâche exécutée par la fonction std::async .

Constantes

Les constantes suivantes désignant des bits individuels sont définies par la bibliothèque standard :

Énumérateur Signification
async la tâche est exécutée sur un thread différent, potentiellement en la créant et en la lançant d'abord
deferred la tâche est exécutée sur le thread appelant la première fois que son résultat est demandé (évaluation paresseuse)

En outre, les implémentations peuvent :

  • définir des bits et masques supplémentaires pour spécifier des restrictions sur les interactions des tâches applicables à un sous-ensemble de politiques de lancement, et
  • activer ces masques supplémentaires pour la première surcharge (par défaut) de std::async .

Rapports de défauts

Les rapports de défauts modifiant le comportement suivants ont été appliqués rétroactivement aux normes C++ précédemment publiées.

DR Applicable à Comportement publié Comportement corrigé
LWG 2102 C++11 std::launch était un type défini par l'implémentation ce n'est pas défini par l'implémentation

Voir aussi

(C++11)
exécute une fonction de manière asynchrone (potentiellement dans un nouveau thread) et retourne une std::future qui contiendra le résultat
(modèle de fonction)