Freigeben über


make_choice-Funktion

Erstellt einen choice-Meldungsblock aus einem optionalen Scheduler oder einer ScheduleGroup und mindestens zwei Eingabequellen.

template<
   typename _Type1,
   typename _Type2,
   typename... _Types
>
choice<std::tuple<_Type1, _Type2, _Types...>> make_choice(
   Scheduler& _PScheduler,
   _Type1_Item1,
   _Type2_Item2,
   _Types... _Items
);

template<
   typename _Type1,
   typename _Type2,
   typename... _Types
>
choice<std::tuple<_Type1, _Type2, _Types...>> make_choice(
   ScheduleGroup& _PScheduleGroup,
   _Type1_Item1,
   _Type2_Item2,
   _Types... _Items
);

template<
   typename _Type1,
   typename _Type2,
   typename... _Types
>
choice<std::tuple<_Type1, _Type2, _Types...>> make_choice(
   _Type1_Item1,
   _Type2_Item2,
   _Types... _Items
);

Parameter

  • _Type1
    Der Meldungsblocktyp der ersten Quelle.

  • _Type2
    Der Meldungsblocktyp der zweiten Quelle.

  • _PScheduler
    Das Scheduler-Objekt, in dem die Weiterleitungsaufgabe für den choice-Meldungsblock geplant ist.

  • _Item1
    Die erste Quelle.

  • _Item2
    Die zweite Quelle.

  • _Items
    Zusätzliche Quellen.

  • _PScheduleGroup
    Das ScheduleGroup-Objekt, in dem die Weiterleitungsaufgabe für den choice-Meldungsblock geplant ist. Das verwendete Scheduler-Objekt wird von der Planungsgruppe impliziert.

Rückgabewert

Ein choice-Nachrichtenblock mit zwei oder mehr Eingabequellen.

Anforderungen

Header: agents.h

Namespace: Parallelität

Siehe auch

Referenz

concurrency-Namespace

choice-Klasse

Scheduler-Klasse

ScheduleGroup-Klasse