Preguntas etiquetadas con task-parallel-library

La biblioteca paralela de tareas forma parte de .NET Framework desde .NET 4. Es un conjunto de API que permite a los desarrolladores programar aplicaciones asincrónicas.

4
Token de cancelación en el constructor de tareas: ¿por qué?
Ciertos System.Threading.Tasks.Taskconstructores toman a CancellationTokencomo parámetro: CancellationTokenSource source = new CancellationTokenSource(); Task t = new Task (/* method */, source.Token); Lo que me desconcierta acerca de esto es que no hay forma desde el interior del cuerpo del método para llegar realmente al token pasado (por ejemplo, nada parecido Task.CurrentTask.CancellationToken). …

6
¿Cuál es la diferencia entre Task.Start / Wait y Async / Await?
Puede que me falte algo, pero ¿cuál es la diferencia entre hacer: public void MyMethod() { Task t = Task.Factory.StartNew(DoSomethingThatTakesTime); t.Wait(); UpdateLabelToSayItsComplete(); } public async void MyMethod() { var result = Task.Factory.StartNew(DoSomethingThatTakesTime); await result; UpdateLabelToSayItsComplete(); } private void DoSomethingThatTakesTime() { Thread.Sleep(10000); }


11
¿Sin ConcurrentList <T> en .Net 4.0?
Me emocionó ver el nuevo System.Collections.Concurrentespacio de nombres en .Net 4.0, ¡bastante agradable! Yo he visto ConcurrentDictionary, ConcurrentQueue, ConcurrentStack, ConcurrentBagy BlockingCollection. Una cosa que parece faltar misteriosamente es una ConcurrentList&lt;T&gt;. ¿Tengo que escribir eso yo mismo (o sacarlo de la web :))? ¿Me estoy perdiendo algo obvio aquí?


3
espera vs Tarea. Espera - ¿Punto muerto?
No entiendo la diferencia entre Task.Waity await. Tengo algo similar a las siguientes funciones en un servicio ASP.NET WebAPI: public class TestController : ApiController { public static async Task&lt;string&gt; Foo() { await Task.Delay(1).ConfigureAwait(false); return ""; } public async static Task&lt;string&gt; Bar() { return await Foo(); } public async static Task&lt;string&gt; …


6
HttpClient: ¿se canceló una tarea?
Funciona bien cuando tiene una o dos tareas, sin embargo, arroja un error "Se canceló una tarea" cuando tenemos más de una tarea en la lista. List&lt;Task&gt; allTasks = new List&lt;Task&gt;(); allTasks.Add(....); allTasks.Add(....); Task.WaitAll(allTasks.ToArray(), configuration.CancellationToken); private static Task&lt;T&gt; HttpClientSendAsync&lt;T&gt;(string url, object data, HttpMethod method, string contentType, CancellationToken token) { HttpRequestMessage …



4
¿Cómo cancelar una tarea en espera?
Estoy jugando con estas tareas de Windows 8 WinRT, y estoy tratando de cancelar una tarea usando el siguiente método, y funciona hasta cierto punto. Se llama al método CancelNotification, lo que te hace pensar que la tarea se canceló, pero en el fondo la tarea sigue ejecutándose, luego, una …




5
Foreach paralelo con lambda asincrónica
Me gustaría manejar una colección en paralelo, pero tengo problemas para implementarla y, por lo tanto, espero ayuda. El problema surge si quiero llamar a un método marcado asíncrono en C #, dentro de la lambda del bucle paralelo. Por ejemplo: var bag = new ConcurrentBag&lt;object&gt;(); Parallel.ForEach(myCollection, async item =&gt; …

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.