Compartilhar via


Função make_choice

Constrói um bloco de mensagem de choice de um Scheduler opcional ou ScheduleGroup e duas ou mais fontes de entrada.

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
);

Parâmetros

  • _Type1
    O tipo de bloco de mensagem da primeira origem.

  • _Type2
    O tipo de bloco de mensagem da segunda origem.

  • _PScheduler
    O objeto Scheduler para o qual é agendada a tarefa de propagação do bloco de mensagem de choice.

  • _Item1
    A primeira origem.

  • _Item2
    A segunda origem.

  • _Items
    Recursos adicionais.

  • _PScheduleGroup
    O objeto ScheduleGroup para o qual é agendada a tarefa de propagação do bloco de mensagem de choice. O objeto Scheduler usado é inferido pelo grupo agendado.

Valor de retorno

Um bloco de mensagem de choice com duas ou mais fontes de entrada.

Requisitos

Cabeçalho: agents.h

Namespace: simultaneidade

Consulte também

Referência

Namespace Concurrency

Classe choice

Classe Scheduler

Classe ScheduleGroup