Arcane  v3.14.10.0
Documentation développeur
Chargement...
Recherche...
Aucune correspondance
Référence de la classe Arcane::MessagePassing::SharedMemoryBasicAsyncQueue

Implémentation basique d'une file multi-thread. Plus de détails...

+ Graphe d'héritage de Arcane::MessagePassing::SharedMemoryBasicAsyncQueue:
+ Graphe de collaboration de Arcane::MessagePassing::SharedMemoryBasicAsyncQueue:

Fonctions membres publiques

void push (void *v) override
 Ajoute v dans la file.
 
voidpop () override
 Récupère la première valeur de la file et bloque s'il n'y en a pas.
 
voidtryPop () override
 Récupère la première valeur s'il y en. Retourne nullptr sinon.
 

Attributs privés

std::queue< void * > m_shared_queue
 
std::mutex m_mutex
 
std::condition_variable m_conditional_variable
 

Membres hérités additionnels

- Fonctions membres publiques statiques hérités de Arcane::MessagePassing::IAsyncQueue
static IAsyncQueuecreateQueue ()
 

Description détaillée

Implémentation basique d'une file multi-thread.

Utilise un mutex pour protéger les appels.

Définition à la ligne 44 du fichier AsyncQueue.cc.

Documentation des fonctions membres

◆ pop()

void * Arcane::MessagePassing::SharedMemoryBasicAsyncQueue::pop ( )
inlineoverridevirtual

Récupère la première valeur de la file et bloque s'il n'y en a pas.

Implémente Arcane::MessagePassing::IAsyncQueue.

Définition à la ligne 60 du fichier AsyncQueue.cc.

◆ push()

void Arcane::MessagePassing::SharedMemoryBasicAsyncQueue::push ( void v)
inlineoverridevirtual

Ajoute v dans la file.

Implémente Arcane::MessagePassing::IAsyncQueue.

Définition à la ligne 49 du fichier AsyncQueue.cc.

◆ tryPop()

void * Arcane::MessagePassing::SharedMemoryBasicAsyncQueue::tryPop ( )
inlineoverridevirtual

Récupère la première valeur s'il y en. Retourne nullptr sinon.

Implémente Arcane::MessagePassing::IAsyncQueue.

Définition à la ligne 70 du fichier AsyncQueue.cc.

Documentation des données membres

◆ m_conditional_variable

std::condition_variable Arcane::MessagePassing::SharedMemoryBasicAsyncQueue::m_conditional_variable
private

Définition à la ligne 84 du fichier AsyncQueue.cc.

◆ m_mutex

std::mutex Arcane::MessagePassing::SharedMemoryBasicAsyncQueue::m_mutex
private

Définition à la ligne 83 du fichier AsyncQueue.cc.

◆ m_shared_queue

std::queue<void*> Arcane::MessagePassing::SharedMemoryBasicAsyncQueue::m_shared_queue
private

Définition à la ligne 82 du fichier AsyncQueue.cc.


La documentation de cette classe a été générée à partir du fichier suivant :