Funzione when_any
Crea un'attività che verrà completata correttamente quando tutte le attività fornite come argomenti verranno completate correttamente.
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));
Parametri
_Iterator
Tipo di iteratore di input._Begin
La posizione del primo elemento nell'intervallo di elementi da combinare nell'attività risultante._End
La posizione del primo elemento oltre l'intervallo di elementi da combinare nell'attività risultante._TaskOptions
_CancellationToken
Il token di annullamento che controlla l'annullamento dell'attività restituita. Se non si fornisce un token di annullamento, all'attività risultante verrà inviato il relativo token di annullamento che ne comporterà il completamento.
Valore restituito
Attività che viene completata correttamente quando una qualsiasi delle attività di input è stata completata. Se le attività di input sono di tipo T, l'output di questa funzione sarà un oggetto task<std::pair<T, size_t>>>, dove il primo elemento della coppia è il risultato dell'attività di completamento e il secondo elemento è l'indice dell'attività completata. Se le attività di input sono di tipo void, l'output è un oggetto task<size_t>, dove il risultato è l'indice dell'attività di completamento.
Note
when_any è una funzione non bloccante che produce task come risultato. A differenza di task::wait, è opportuno chiamare questa funzione in un'applicazione Windows Store nel thread ASTA (Application STA).
Per ulteriori informazioni, vedere Parallelismo delle attività (runtime di concorrenza).
Requisiti
Intestazione: ppltasks.h
Spazio dei nomi: concorrenza