Partager via


Classe choice

Un bloc de messagerie choice est une source multiple, bloc de cible unique qui représente une interaction de flux de contrôle avec un jeu de sources.Le bloc de choix attendra que l'une des sources multiples produise un message et propagera l'index de la source qui a produit le message.

template<
   class _Type
>
class choice: public ISource<size_t>;

Paramètres

  • _Type
    Type basé sur un tuple qui représente les charges utiles des sources d'entrée.

Membres

Dd492421.collapse_all(fr-fr,VS.110).gifTypedefs publics

Nom

Description

type

Alias de type pour _Type.

Dd492421.collapse_all(fr-fr,VS.110).gifConstructeurs publics

Nom

Description

choice::choice, constructeur

Surchargé.Construit un bloc de messagerie choice.

choice::~choice, destructeur

Détruit le bloc de messagerie choice.

Dd492421.collapse_all(fr-fr,VS.110).gifMéthodes publiques

Nom

Description

choice::accept, méthode

Accepte un message qui a été transmis par ce bloc choice, en transférant la propriété à l'appelant.

choice::acquire_ref, méthode

Acquiert un décompte de références sur ce bloc de messagerie choice, pour empêcher la suppression.

choice::consume, méthode

Consomme un message offert précédemment par ce bloc de messagerie choice et réservé avec succès par la cible, en transférant la propriété à l'appelant.

choice::has_value, méthode

Vérifie si ce bloc de messagerie choice a déjà été initialisé avec une valeur.

choice::index, méthode

Retourne un index dans le tuple qui représente l'élément sélectionné par le bloc de messagerie choice.

choice::link_target, méthode

Lie un bloc cible à ce bloc de messagerie choice.

choice::release, méthode

Libère une réservation de message réussie précédente.

choice::release_ref, méthode

Libère un nombre de références sur ce bloc de messagerie choice.

choice::reserve, méthode

Réserve un message précédemment offert par ce bloc de messagerie choice.

choice::unlink_target, méthode

Dissocie un bloc cible de ce bloc de messagerie choice.

choice::unlink_targets, méthode

Dissocie toutes les cibles de ce bloc de messagerie choice.(Substitue ISource::unlink_targets.)

choice::value, méthode

Obtient le message dont l'index a été sélectionné par le bloc de messagerie choice.

Notes

Le bloc de choix vérifie qu'un seul des messages entrants est consommé.

Pour plus d'informations, consultez Blocs de messages asynchrones.

Hiérarchie d'héritage

ISource

choice

Configuration requise

En-tête : agents.h

Accès concurrentiel del'espace de noms :

Voir aussi

Référence

concurrency, espace de noms

join, classe

Classe single_assignment

make_choice, fonction

tuple Class