Classe single_assignment
Un bloc de messagerie single_assignment est un propagator_block de cible multiple, de source multiple et classé capable de stocker un message unique, écrit une seule fois.
template<
class _Type
>
class single_assignment : public propagator_block<multi_link_registry<ITarget<_Type>>, multi_link_registry<ISource<_Type>>>;
Paramètres
- _Type
Le type de charge utile du message stocké et propagé par la mémoire tampon.
Membres
Constructeurs publics
Nom |
Description |
---|---|
Surchargé. Construit un bloc de messagerie single_assignment. |
|
Détruit le bloc de messagerie single_assignment. |
Méthodes publiques
Nom |
Description |
---|---|
Vérifie si ce bloc de messagerie single_assignment a déjà été initialisé avec une valeur. |
|
Obtient une référence pour la charge utile actuelle du message qui est stocké dans le bloc de messagerie single_assignment. |
Méthodes protégées
Nom |
Description |
---|---|
Accepte un message qui a été transmis par ce bloc de messagerie single_assignment, en retournant une copie du message à l'appelant. |
|
Consomme un message offert précédemment par le single_assignment et réservé par la cible, en retournant une copie du message à l'appelant. |
|
Rappel qui notifie qu'une nouvelle cible a été liée à ce bloc de messagerie single_assignment. |
|
Passe un message de façon asynchrone d'un bloc ISource à ce bloc de messagerie single_assignment. Il est appelé par la méthode propagate, en cas d'appel par un bloc source. |
|
Place le message_PMessage dans ce bloc de messagerie single_assignment et l'offres à toutes les cibles liées. |
|
Libère une réservation de message précédente. (Substitue source_block::release_message.) |
|
Réserve un message précédemment offert par ce bloc de messagerie single_assignment. (Substitue source_block::reserve_message.) |
|
Reprend la propagation après qu'une réservation a été libérée. (Substitue source_block::resume_propagation.) |
|
Passe de façon synchrone un message du bloc ISource au bloc de messagerie single_assignment. Il est appelé par la méthode send, en cas d'appel par un bloc source. |
Notes
Un bloc de messagerie single_assignment propage des copies de son message vers chaque cible.
Pour plus d'informations, consultez Blocs de messages asynchrones.
Hiérarchie d'héritage
single_assignment
Configuration requise
En-tête : agents.h
Espace de noms : concurrency