다음을 통해 공유


make_join 함수

2~10개 입력 소스 사이에서 옵션 Scheduler 또는 ScheduleGroupnon_greedy multitype_join 메시징 블록을 생성합니다.

template<
   typename _Type1,
   typename _Type2
>
multitype_join<std::tr1::tuple<_Type1, _Type2>> make_join(
   Scheduler& _PScheduler,
   _Type1_Item1,
   _Type2_Item2
);

template<
   typename _Type1,
   typename _Type2,
   typename _Type3
>
multitype_join<std::tr1::tuple<_Type1, _Type2, _Type3>> make_join(
   Scheduler& _PScheduler,
   _Type1_Item1,
   _Type2_Item2,
   _Type3_Item3
);

template<
   typename _Type1,
   typename _Type2,
   typename _Type3,
   typename _Type4
>
multitype_join<std::tr1::tuple<_Type1, _Type2, _Type3, _Type4>> make_join(
   Scheduler& _PScheduler,
   _Type1_Item1,
   _Type2_Item2,
   _Type3_Item3,
   _Type4_Item4
);

template<
   typename _Type1,
   typename _Type2,
   typename _Type3,
   typename _Type4,
   typename _Type5
>
multitype_join<std::tr1::tuple<_Type1, _Type2, _Type3, _Type4, _Type5>> make_join(
   Scheduler& _PScheduler,
   _Type1_Item1,
   _Type2_Item2,
   _Type3_Item3,
   _Type4_Item4,
   _Type5_Item5
);

template<
   typename _Type1,
   typename _Type2,
   typename _Type3,
   typename _Type4,
   typename _Type5,
   typename _Type6
>
multitype_join<std::tr1::tuple<_Type1, _Type2, _Type3, _Type4, _Type5, _Type6>> make_join(
   Scheduler& _PScheduler,
   _Type1_Item1,
   _Type2_Item2,
   _Type3_Item3,
   _Type4_Item4,
   _Type5_Item5,
   _Type6_Item6
);

template<
   typename _Type1,
   typename _Type2,
   typename _Type3,
   typename _Type4,
   typename _Type5,
   typename _Type6,
   typename _Type7
>
multitype_join<std::tr1::tuple<_Type1, _Type2, _Type3, _Type4, _Type5, _Type6, _Type7>> make_join(
   Scheduler& _PScheduler,
   _Type1_Item1,
   _Type2_Item2,
   _Type3_Item3,
   _Type4_Item4,
   _Type5_Item5,
   _Type6_Item6,
   _Type7_Item7
);

template<
   typename _Type1,
   typename _Type2,
   typename _Type3,
   typename _Type4,
   typename _Type5,
   typename _Type6,
   typename _Type7,
   typename _Type8
>
multitype_join<std::tr1::tuple<_Type1, _Type2, _Type3, _Type4, _Type5, _Type6, _Type7, _Type8>> make_join(
   Scheduler& _PScheduler,
   _Type1_Item1,
   _Type2_Item2,
   _Type3_Item3,
   _Type4_Item4,
   _Type5_Item5,
   _Type6_Item6,
   _Type7_Item7,
   _Type8_Item8
);

template<
   typename _Type1,
   typename _Type2,
   typename _Type3,
   typename _Type4,
   typename _Type5,
   typename _Type6,
   typename _Type7,
   typename _Type8,
   typename _Type9
>
multitype_join<std::tr1::tuple<_Type1, _Type2, _Type3, _Type4, _Type5, _Type6, _Type7, _Type8, _Type9>> make_join(
   Scheduler& _PScheduler,
   _Type1_Item1,
   _Type2_Item2,
   _Type3_Item3,
   _Type4_Item4,
   _Type5_Item5,
   _Type6_Item6,
   _Type7_Item7,
   _Type8_Item8,
   _Type9_Item9
);

template<
   typename _Type1,
   typename _Type2,
   typename _Type3,
   typename _Type4,
   typename _Type5,
   typename _Type6,
   typename _Type7,
   typename _Type8,
   typename _Type9,
   typename _Type10
>
multitype_join<std::tr1::tuple<_Type1, _Type2, _Type3, _Type4, _Type5, _Type6, _Type7, _Type8, _Type9, _Type10>> make_join(
   Scheduler& _PScheduler,
   _Type1_Item1,
   _Type2_Item2,
   _Type3_Item3,
   _Type4_Item4,
   _Type5_Item5,
   _Type6_Item6,
   _Type7_Item7,
   _Type8_Item8,
   _Type9_Item9,
   _Type10_Item10
);

template<
   typename _Type1,
   typename _Type2
>
multitype_join<std::tr1::tuple<_Type1, _Type2>> make_join(
   ScheduleGroup& _PScheduleGroup,
   _Type1_Item1,
   _Type2_Item2
);

template<
   typename _Type1,
   typename _Type2,
   typename _Type3
>
multitype_join<std::tr1::tuple<_Type1, _Type2, _Type3>> make_join(
   ScheduleGroup& _PScheduleGroup,
   _Type1_Item1,
   _Type2_Item2,
   _Type3_Item3
);

template<
   typename _Type1,
   typename _Type2,
   typename _Type3,
   typename _Type4
>
multitype_join<std::tr1::tuple<_Type1, _Type2, _Type3, _Type4>> make_join(
   ScheduleGroup& _PScheduleGroup,
   _Type1_Item1,
   _Type2_Item2,
   _Type3_Item3,
   _Type4_Item4
);

template<
   typename _Type1,
   typename _Type2,
   typename _Type3,
   typename _Type4,
   typename _Type5
>
multitype_join<std::tr1::tuple<_Type1, _Type2, _Type3, _Type4, _Type5>> make_join(
   ScheduleGroup& _PScheduleGroup,
   _Type1_Item1,
   _Type2_Item2,
   _Type3_Item3,
   _Type4_Item4,
   _Type5_Item5
);

template<
   typename _Type1,
   typename _Type2,
   typename _Type3,
   typename _Type4,
   typename _Type5,
   typename _Type6
>
multitype_join<std::tr1::tuple<_Type1, _Type2, _Type3, _Type4, _Type5, _Type6>> make_join(
   ScheduleGroup& _PScheduleGroup,
   _Type1_Item1,
   _Type2_Item2,
   _Type3_Item3,
   _Type4_Item4,
   _Type5_Item5,
   _Type6_Item6
);

template<
   typename _Type1,
   typename _Type2,
   typename _Type3,
   typename _Type4,
   typename _Type5,
   typename _Type6,
   typename _Type7
>
multitype_join<std::tr1::tuple<_Type1, _Type2, _Type3, _Type4, _Type5, _Type6, _Type7>> make_join(
   ScheduleGroup& _PScheduleGroup,
   _Type1_Item1,
   _Type2_Item2,
   _Type3_Item3,
   _Type4_Item4,
   _Type5_Item5,
   _Type6_Item6,
   _Type7_Item7
);

template<
   typename _Type1,
   typename _Type2,
   typename _Type3,
   typename _Type4,
   typename _Type5,
   typename _Type6,
   typename _Type7,
   typename _Type8
>
multitype_join<std::tr1::tuple<_Type1, _Type2, _Type3, _Type4, _Type5, _Type6, _Type7, _Type8>> make_join(
   ScheduleGroup& _PScheduleGroup,
   _Type1_Item1,
   _Type2_Item2,
   _Type3_Item3,
   _Type4_Item4,
   _Type5_Item5,
   _Type6_Item6,
   _Type7_Item7,
   _Type8_Item8
);

template<
   typename _Type1,
   typename _Type2,
   typename _Type3,
   typename _Type4,
   typename _Type5,
   typename _Type6,
   typename _Type7,
   typename _Type8,
   typename _Type9
>
multitype_join<std::tr1::tuple<_Type1, _Type2, _Type3, _Type4, _Type5, _Type6, _Type7, _Type8, _Type9>> make_join(
   ScheduleGroup& _PScheduleGroup,
   _Type1_Item1,
   _Type2_Item2,
   _Type3_Item3,
   _Type4_Item4,
   _Type5_Item5,
   _Type6_Item6,
   _Type7_Item7,
   _Type8_Item8,
   _Type9_Item9
);

template<
   typename _Type1,
   typename _Type2,
   typename _Type3,
   typename _Type4,
   typename _Type5,
   typename _Type6,
   typename _Type7,
   typename _Type8,
   typename _Type9,
   typename _Type10
>
multitype_join<std::tr1::tuple<_Type1, _Type2, _Type3, _Type4, _Type5, _Type6, _Type7, _Type8, _Type9, _Type10>> make_join(
   ScheduleGroup& _PScheduleGroup,
   _Type1_Item1,
   _Type2_Item2,
   _Type3_Item3,
   _Type4_Item4,
   _Type5_Item5,
   _Type6_Item6,
   _Type7_Item7,
   _Type8_Item8,
   _Type9_Item9,
   _Type10_Item10
);

template<
   typename _Type1,
   typename _Type2
>
multitype_join<std::tr1::tuple<_Type1, _Type2>> make_join(
   _Type1_Item1,
   _Type2_Item2
);

template<
   typename _Type1,
   typename _Type2,
   typename _Type3
>
multitype_join<std::tr1::tuple<_Type1, _Type2, _Type3>> make_join(
   _Type1_Item1,
   _Type2_Item2,
   _Type3_Item3
);

template<
   typename _Type1,
   typename _Type2,
   typename _Type3,
   typename _Type4
>
multitype_join<std::tr1::tuple<_Type1, _Type2, _Type3, _Type4>> make_join(
   _Type1_Item1,
   _Type2_Item2,
   _Type3_Item3,
   _Type4_Item4
);

template<
   typename _Type1,
   typename _Type2,
   typename _Type3,
   typename _Type4,
   typename _Type5
>
multitype_join<std::tr1::tuple<_Type1, _Type2, _Type3, _Type4, _Type5>> make_join(
   _Type1_Item1,
   _Type2_Item2,
   _Type3_Item3,
   _Type4_Item4,
   _Type5_Item5
);

template<
   typename _Type1,
   typename _Type2,
   typename _Type3,
   typename _Type4,
   typename _Type5,
   typename _Type6
>
multitype_join<std::tr1::tuple<_Type1, _Type2, _Type3, _Type4, _Type5, _Type6>> make_join(
   _Type1_Item1,
   _Type2_Item2,
   _Type3_Item3,
   _Type4_Item4,
   _Type5_Item5,
   _Type6_Item6
);

template<
   typename _Type1,
   typename _Type2,
   typename _Type3,
   typename _Type4,
   typename _Type5,
   typename _Type6,
   typename _Type7
>
multitype_join<std::tr1::tuple<_Type1, _Type2, _Type3, _Type4, _Type5, _Type6, _Type7>> make_join(
   _Type1_Item1,
   _Type2_Item2,
   _Type3_Item3,
   _Type4_Item4,
   _Type5_Item5,
   _Type6_Item6,
   _Type7_Item7
);

template<
   typename _Type1,
   typename _Type2,
   typename _Type3,
   typename _Type4,
   typename _Type5,
   typename _Type6,
   typename _Type7,
   typename _Type8
>
multitype_join<std::tr1::tuple<_Type1, _Type2, _Type3, _Type4, _Type5, _Type6, _Type7, _Type8>> make_join(
   _Type1_Item1,
   _Type2_Item2,
   _Type3_Item3,
   _Type4_Item4,
   _Type5_Item5,
   _Type6_Item6,
   _Type7_Item7,
   _Type8_Item8
);

template<
   typename _Type1,
   typename _Type2,
   typename _Type3,
   typename _Type4,
   typename _Type5,
   typename _Type6,
   typename _Type7,
   typename _Type8,
   typename _Type9
>
multitype_join<std::tr1::tuple<_Type1, _Type2, _Type3, _Type4, _Type5, _Type6, _Type7, _Type8, _Type9>> make_join(
   _Type1_Item1,
   _Type2_Item2,
   _Type3_Item3,
   _Type4_Item4,
   _Type5_Item5,
   _Type6_Item6,
   _Type7_Item7,
   _Type8_Item8,
   _Type9_Item9
);

template<
   typename _Type1,
   typename _Type2,
   typename _Type3,
   typename _Type4,
   typename _Type5,
   typename _Type6,
   typename _Type7,
   typename _Type8,
   typename _Type9,
   typename _Type10
>
multitype_join<std::tr1::tuple<_Type1, _Type2, _Type3, _Type4, _Type5, _Type6, _Type7, _Type8, _Type9, _Type10>> make_join(
   _Type1_Item1,
   _Type2_Item2,
   _Type3_Item3,
   _Type4_Item4,
   _Type5_Item5,
   _Type6_Item6,
   _Type7_Item7,
   _Type8_Item8,
   _Type9_Item9,
   _Type10_Item10
);

매개 변수

  • _Type1
    첫 번째 소스의 메시지 블록 형식입니다.

  • _Type2
    두 번째 소스의 메시지 블록 형식입니다.

  • _Type3
    세 번째 소스의 메시지 블록 형식입니다.

  • _Type4
    네 번째 소스의 메시지 블록 형식입니다.

  • _Type5
    5번째 소스의 메시지 블록 형식입니다.

  • _Type6

  • _Type7

  • _Type8

  • _Type9

  • _Type10

  • _PScheduler
    multitype_join 메시징 블록의 전파 작업이 예약되는 Scheduler 개체입니다.

  • _Item1
    첫 번째 소스입니다.

  • _Item2
    두 번째 소스입니다.

  • _Item3
    세 번째 소스입니다.

  • _Item4
    네 번째 소스입니다.

  • _Item5
    다섯 번째 소스입니다.

  • _Item6

  • _Item7

  • _Item8

  • _Item9

  • _Item10

  • _PScheduleGroup
    multitype_join 메시징 블록의 전파 작업이 예약되는 ScheduleGroup 개체입니다.사용된 Scheduler 개체는 일정 그룹에서 암시됩니다.

반환 값

2 ~ 10개의 입력 소스가 있는 non_greedy multitype_join 메시지 블록입니다.

요구 사항

헤더: agents.h

네임 스페이스: 동시성

참고 항목

참조

동시성 네임스페이스

multitype_join 클래스

Scheduler 클래스

ScheduleGroup 클래스