Expand Minimize

parallel_invoke Function

Executes the function objects supplied as parameters in parallel, and blocks until they have finished executing. Each function object could be a lambda expression, a pointer to function, or any object that supports the function call operator with the signature void operator()().

template <
   typename _Function1,
   typename _Function2
>
void parallel_invoke(
   const _Function1& _Func1,
   const _Function2& _Func2
);

template <
   typename _Function1,
   typename _Function2,
   typename _Function3
>
void parallel_invoke(
   const _Function1& _Func1,
   const _Function2& _Func2,
   const _Function3& _Func3
);

template <
   typename _Function1,
   typename _Function2,
   typename _Function3,
   typename _Function4
>
void parallel_invoke(
   const _Function1& _Func1,
   const _Function2& _Func2,
   const _Function3& _Func3,
   const _Function4& _Func4
);

template <
   typename _Function1,
   typename _Function2,
   typename _Function3,
   typename _Function4,
   typename _Function5
>
void parallel_invoke(
   const _Function1& _Func1,
   const _Function2& _Func2,
   const _Function3& _Func3,
   const _Function4& _Func4,
   const _Function5& _Func5
);

template <
   typename _Function1,
   typename _Function2,
   typename _Function3,
   typename _Function4,
   typename _Function5,
   typename _Function6
>
void parallel_invoke(
   const _Function1& _Func1,
   const _Function2& _Func2,
   const _Function3& _Func3,
   const _Function4& _Func4,
   const _Function5& _Func5,
   const _Function6& _Func6
);

template <
   typename _Function1,
   typename _Function2,
   typename _Function3,
   typename _Function4,
   typename _Function5,
   typename _Function6,
   typename _Function7
>
void parallel_invoke(
   const _Function1& _Func1,
   const _Function2& _Func2,
   const _Function3& _Func3,
   const _Function4& _Func4,
   const _Function5& _Func5,
   const _Function6& _Func6,
   const _Function7& _Func7
);

template <
   typename _Function1,
   typename _Function2,
   typename _Function3,
   typename _Function4,
   typename _Function5,
   typename _Function6,
   typename _Function7,
   typename _Function8
>
void parallel_invoke(
   const _Function1& _Func1,
   const _Function2& _Func2,
   const _Function3& _Func3,
   const _Function4& _Func4,
   const _Function5& _Func5,
   const _Function6& _Func6,
   const _Function7& _Func7,
   const _Function8& _Func8
);

template <
   typename _Function1,
   typename _Function2,
   typename _Function3,
   typename _Function4,
   typename _Function5,
   typename _Function6,
   typename _Function7,
   typename _Function8,
   typename _Function9
>
void parallel_invoke(
   const _Function1& _Func1,
   const _Function2& _Func2,
   const _Function3& _Func3,
   const _Function4& _Func4,
   const _Function5& _Func5,
   const _Function6& _Func6,
   const _Function7& _Func7,
   const _Function8& _Func8,
   const _Function9& _Func9
);

template <
   typename _Function1,
   typename _Function2,
   typename _Function3,
   typename _Function4,
   typename _Function5,
   typename _Function6,
   typename _Function7,
   typename _Function8,
   typename _Function9,
   typename _Function10
>
void parallel_invoke(
   const _Function1& _Func1,
   const _Function2& _Func2,
   const _Function3& _Func3,
   const _Function4& _Func4,
   const _Function5& _Func5,
   const _Function6& _Func6,
   const _Function7& _Func7,
   const _Function8& _Func8,
   const _Function9& _Func9,
   const _Function10& _Func10
);

_Function1

The type of the first function object to be executed in parallel.

_Function2

The type of the second function object to be executed in parallel.

_Function3

The type of the third function object to be executed in parallel.

_Function4

The type of the fourth function object to be executed in parallel.

_Function5

The type of the fifth function object to be executed in parallel.

_Function6

The type of the sixth function object to be executed in parallel.

_Function7

The type of the seventh function object to be executed in parallel.

_Function8

The type of the eighth function object to be executed in parallel.

_Function9

The type of the ninth function object to be executed in parallel.

_Function10

The type of the tenth function object to be executed in parallel.

_Func1

The first function object to be executed in parallel.

_Func2

The second function object to be executed in parallel.

_Func3

The third function object to be executed in parallel.

_Func4

The fourth function object to be executed in parallel.

_Func5

The fifth function object to be executed in parallel.

_Func6

The sixth function object to be executed in parallel.

_Func7

The seventh function object to be executed in parallel.

_Func8

The eighth function object to be executed in parallel.

_Func9

The ninth function object to be executed in parallel.

_Func10

The tenth function object to be executed in parallel.

Note that one or more of the function objects supplied as parameters may execute inline on the calling context.

If one or more of the function objects passed as parameters to this function throws an exception, the runtime will select one such exception of its choosing and propagate it out of the call to parallel_invoke.

For more information, see Parallel Algorithms.

Header: ppl.h

Namespace: concurrency

Was this page helpful?
(1500 characters remaining)
Thank you for your feedback
Show:
© 2014 Microsoft