Bibliothque pour les processus lgers (threads)
Le C++ supporte nativement les processus lgers (threads), les verrous d'exclusion mutuelle (mutex), la synchronisation par variables conditionnelles et la gestion de tches asynchrones (futures).
Processus lgers (threads)
Les processus lgers permettent un programme de s'excuter sur plusieurs curs d'un processeur simultanment.
Defined in header
<thread> | |
(C++11) |
gre un thread spar (classe) |
Fonction grant le processus lger courant | |
Defined in namespace
this_thread | |
(C++11) |
suggre que l'implmentation rchelonne l'excution des threads (fonction) |
(C++11) |
retourne l'id du thread courant (fonction) |
(C++11) |
arrte l'excution du thread courant pendant la dure spcifie (fonction) |
(C++11) |
arrte l'excution du thread en cours jusqu' un point spcifi dans le temps (fonction) |
Exclusion mutuelle
Les algorithmes base d'exclusion mutuelle empchent plusieurs processeurs lgers d'accder de manire simultane des ressources partages. Cela permet d'viter des accs concurrents et permet la synchronisation entre les processus lgers.
Defined in header
<mutex> | |
(C++11) |
fournit un mutex de base (classe) |
(C++11) |
fournit un mutex implmentant le vrrouillage avec dlai d'attente (classe) |
(C++11) |
fournit le mutex qui peut tre verrouill de manire rcursive par le mme thread (classe) |
(C++11) |
fournit le mutex qui peut tre verrouill rcursivement par le mme thread et qui implmente le vrouillage avec dlai d'attente (classe) |
Gestion des mutex | |
(C++11) |
met en uvre un wrapper mutex strictement la porte de l'appropriation Original: implements a strictly scope-based mutex ownership wrapper The text has been machine-translated via Google Translate. You can help to correct and verify the translation. Click here for instructions. (classe gnrique) |
(C++11) |
met en uvre emballage mobile proprit mutex Original: implements movable mutex ownership wrapper The text has been machine-translated via Google Translate. You can help to correct and verify the translation. Click here for instructions. (classe gnrique) |
type de variable permet de spcifier la stratgie de verrouillage Original: tag type used to specify locking strategy The text has been machine-translated via Google Translate. You can help to correct and verify the translation. Click here for instructions. (classe) | |
constantes tag utilis pour spcifier la stratgie de verrouillage Original: tag constants used to specify locking strategy The text has been machine-translated via Google Translate. You can help to correct and verify the translation. Click here for instructions. (constante) | |
Algorithmes gnriques de verrou | |
(C++11) |
tente d'obtenir la proprit des mutex via des appels rpts try_lock Original: attempts to obtain ownership of mutexes via repeated calls to try_lock The text has been machine-translated via Google Translate. You can help to correct and verify the translation. Click here for instructions. (fonction gnrique) |
(C++11) |
verrouille les mutex, les blocs spcifis le cas chant ne sont pas disponibles Original: locks specified mutexes, blocks if any are unavailable The text has been machine-translated via Google Translate. You can help to correct and verify the translation. Click here for instructions. (fonction gnrique) |
Appel de fonction unique | |
(C++11) |
objet d'aide pour s'assurer que call_once invoque la fonction qu'une seule fois Original: helper object to ensure that call_once invokes the function only once The text has been machine-translated via Google Translate. You can help to correct and verify the translation. Click here for instructions. (classe) |
(C++11) |
appelle une fonction qu'une seule fois, mme si elle est appele par plusieurs threads Original: invokes a function only once even if called from multiple threads The text has been machine-translated via Google Translate. You can help to correct and verify the translation. Click here for instructions. (fonction gnrique) |
Les variables conditionnelles
Une variable conditionnelle est une primitive de synchronisation qui permet plusieurs processus lgers de communiquer entre eux. Cela permet qu'un certain nombre de processus lgers attendent (avec expiration possible) une notification de la part d'un autre processus lger pour qu'ils puissent continuer. Une variable conditionnelle est toujours associe un mutex.
Defined in header
<condition_variable> | |
(C++11) |
fournit une variable conditionnelle associe un std::unique_lock (classe) |
(C++11) |
fournit une variable conditionnelle associe n'importe quel type de verrou (classe) |
(C++11) |
prvoit un appel de notify_all qui sera excut lorsque ce processus lger sera termin compltement (fonction) |
(C++11) |
liste les rsultats possibles d'attente chronomtre sur des variables conditionnelles (enum) |
Futures / Asynchronisme
La librairie standard fournit des outils pour obtenir les valeurs de retour ou rattraper les exceptions qui sont renvoyes par des tches asynchrones (c'est--dire des fonctions lances dans des processus lgers spars). Ces valeurs sont communiques dans un tat partag, tat dans lequel la tche asynchrone peut crire sa valeur de retour ou stocker une exception, et par ailleurs tat dans lequel ces valeurs peuvent tre utilises, attendues ou manipules par d'autres processus lgers qui dtiennent une instance de std::future ou std::shared_future qui fait rfrence cet tat partag.
Defined in header
<future> | |
(C++11) |
stocke une valeur pour une rcupration asynchrone Original: stores a value for asynchronous retrieval The text has been machine-translated via Google Translate. You can help to correct and verify the translation. Click here for instructions. (classe gnrique) |
(C++11) |
paquets d'une fonction pour stocker sa valeur de retour pour la rcupration asynchrone Original: packages a function to store its return value for asynchronous retrieval The text has been machine-translated via Google Translate. You can help to correct and verify the translation. Click here for instructions. (classe gnrique) |
(C++11) |
attend une valeur qui est dfinie de manire asynchrone Original: waits for a value that is set asynchronously The text has been machine-translated via Google Translate. You can help to correct and verify the translation. Click here for instructions. (classe gnrique) |
(C++11) |
attend une valeur (peut-tre rfrenc par d'autres futurs) qui est fix de manire asynchrone Original: waits for a value (possibly referenced by other futures) that is set asynchronously The text has been machine-translated via Google Translate. You can help to correct and verify the translation. Click here for instructions. (classe gnrique) |
(C++11) |
excute une fonction asynchrone (potentiellement dans un nouveau thread) et renvoie une std::future qui contiendra le rsultat Original: runs a function asynchronously (potentially in a new thread) and returns a std::future that will hold the result The text has been machine-translated via Google Translate. You can help to correct and verify the translation. Click here for instructions. (fonction gnrique) |
(C++11) |
spcifie la politique de lancement de std::async Original: specifies the launch policy for std::async The text has been machine-translated via Google Translate. You can help to correct and verify the translation. Click here for instructions. (enum) |
(C++11) |
prcise les rsultats de chronomtrs temps d'attente effectue sur std::future et std::shared_future Original: specifies the results of timed waits performed on std::future and std::shared_future The text has been machine-translated via Google Translate. You can help to correct and verify the translation. Click here for instructions. (enum) |
Future errors | |
(C++11) |
signale une erreur lie aux contrats terme ou des promesses Original: reports an error related to futures or promises The text has been machine-translated via Google Translate. You can help to correct and verify the translation. Click here for instructions. (classe) |
(C++11) |
identifie la catgorie d'erreur avenir Original: identifies the future error category The text has been machine-translated via Google Translate. You can help to correct and verify the translation. Click here for instructions. (fonction) |
(C++11) |
identifie les codes d'erreur futures Original: identifies the future error codes The text has been machine-translated via Google Translate. You can help to correct and verify the translation. Click here for instructions. (enum) |