when_any 函式 (C++ REST SDK)
建立工作,這個工作會在當做引數提供的所有工作都順利完成時,順利完成。
警告
本主題包含 C++ REST SDK 1.0 (Codename "Casablanca") 的資訊。如果使用 Codeplex Casablanca 網頁上的較新版本,則請使用 http://casablanca.codeplex.com/documentation 上的本機文件。
template< typename _Iterator > auto when_any( _Iterator_Begin, _Iterator_End, const task_options& _TaskOptions = task_options() ) -> decltype (details::_WhenAnyImpl<typename std::iterator_traits<_Iterator>::value_type::result_type, _Iterator>::_Perform(_TaskOptions, _Begin, _End)); template< typename _Iterator > auto when_any( _Iterator_Begin, _Iterator_End, cancellation_token _CancellationToken ) -> decltype (details::_WhenAnyImpl<typename std::iterator_traits<_Iterator>::value_type::result_type, _Iterator>::_Perform(_CancellationToken._GetImplValue(), _Begin, _End));
參數
_Iterator
輸入迭代器的類型。_Begin
合併至所產生工作之項目範圍內的第一個項目位置。_End
合併至所產生工作之項目範圍外的第一個項目位置。_TaskOptions
_CancellationToken
取消語彙基元,控制傳回工作的取消作業。 如果未提供取消語彙基元,產生的工作將會收到導致其完成之工作的取消語彙基元。
傳回值
一項工作會在所有輸入工作都順利完成時,順利完成。 如果輸入工作的類型為 T,則這個函式的輸出會是 task<std::pair<T, size_t>>>,其中配對的第一個項目是完成工作的結果,而第二個項目是已完成工作的索引。 如果輸入工作的類型為 void,則輸出是 task<size_t>,其中結果是完成工作的索引。
需求
**標頭:**pplxtasks.h
**命名空間:**pplx