Qual è il modo migliore per restituire un'attività che non ha un parametro di tipo generico? In altre parole un'attività che rappresenta un'operazione che non restituisce nulla o restituisce void
?Che cosa è un'alternativa per Task.FromResult <T>() per le attività che rappresentano le operazioni che restituiscono l'annullamento
In altre parole, Cerco alternative per il seguente:
T value = default(T);
return Task.FromResult<T>(value); // and
var tcs = new TaskCompletionSource<T>();
tcs.SetResult(value);
return tcs.Task;
Ma per le attività che rappresentano operazioni che non dovrebbero restituire nulla.
Grazie. Mi ci è voluto un po 'di tempo per votare come risposta corretta perché stavo pensando alle implicazioni. Mentre la firma lo consente, ero preoccupato di cosa accadrebbe se il consumatore di quell'attività si aspettasse che l'attività restituisse qualcosa. Ma hai ragione. Sono autore del compito e so che non restituisce nulla. Non importa ciò che il consumatore si aspetta nell'ignoranza. Può scegliere di aspettarlo o semplicemente buttarlo via (fuoco e dimenticare). In entrambi i casi, funzionerà. –
Prima di 4.6 è possibile chiamare Task.WhenAll() senza argomenti per esporre Task.CompletedTask che è interno fino a 4.6 –
'Task.CompletedTask' non sembra apparire in portatile a partire da febbraio 2017. – Shimmy