Preguntas etiquetadas con async-await

Esto cubre el modelo de programación asíncrona compatible con varios lenguajes de programación, utilizando las palabras clave asíncronas y en espera.





7
¿Cuál es el propósito de "retorno espera" en C #?
¿Hay algún escenario en el que escribir un método como este: public async Task<SomeResult> DoSomethingAsync() { // Some synchronous code might or might not be here... // return await DoAnotherThingAsync(); } en lugar de esto: public Task<SomeResult> DoSomethingAsync() { // Some synchronous code might or might not be here... // …
251 c#  .net  .net-4.5  async-await 




12
Llamar al método asíncrono sincrónicamente
Tengo un asyncmetodo: public async Task<string> GenerateCodeAsync() { string code = await GenerateCodeService.GenerateCodeAsync(); return code; } Necesito llamar a este método desde un método sincrónico. ¿Cómo puedo hacer esto sin tener que duplicar el GenerateCodeAsyncmétodo para que esto funcione sincrónicamente? Actualizar Sin embargo, no se encontró una solución razonable. Sin …

4
¿Cuándo usaría Task.Yield ()?
Estoy usando async / await y Taskmucho, pero nunca he estado usando Task.Yield()y, para ser honesto, incluso con todas las explicaciones, no entiendo por qué necesitaría este método. ¿Alguien puede dar un buen ejemplo donde Yield()se requiere?
218 c#  async-await 



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); }


3
¿Cómo se crea un método asincrónico en C #?
Cada publicación de blog que he leído te dice cómo consumir un método asincrónico en C #, pero por alguna extraña razón nunca explicas cómo construir tus propios métodos asincrónicos para consumir. Entonces tengo este código en este momento que consume mi método: private async void button1_Click(object sender, EventArgs e) …
196 c#  async-await  c#-5.0 

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.