Perguntas com a marcação «async-await»

Isso abrange o modelo de programação assíncrona suportado por várias linguagens de programação, usando as palavras-chave async e wait.





7
Qual é o objetivo do "retorno aguardar" em c #?
Existe algum cenário em que escrever método como este: public async Task<SomeResult> DoSomethingAsync() { // Some synchronous code might or might not be here... // return await DoAnotherThingAsync(); } em vez disso: public Task<SomeResult> DoSomethingAsync() { // Some synchronous code might or might not be here... // return DoAnotherThingAsync(); } …
251 c#  .net  .net-4.5  async-await 




12
Chamando o método assíncrono de forma síncrona
Eu tenho um asyncmétodo: public async Task<string> GenerateCodeAsync() { string code = await GenerateCodeService.GenerateCodeAsync(); return code; } Eu preciso chamar esse método a partir de um método síncrono. Como fazer isso sem precisar duplicar o GenerateCodeAsyncmétodo para que ele funcione de forma síncrona? Atualizar No entanto, nenhuma solução razoável foi …

4
Quando eu usaria Task.Yield ()?
Estou usando async / waitit e Taskmuito, mas nunca usei Task.Yield()e para ser honesto, mesmo com todas as explicações, não entendo por que precisaria desse método. Alguém pode dar um bom exemplo onde Yield()é necessário?
218 c#  async-await 



6
Qual é a diferença entre Task.Start / Wait e Async / Await?
Posso estar faltando alguma coisa, mas qual é a diferença entre fazer: 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
Como você cria um método assíncrono em c #?
Cada postagem de blog que eu li mostra como consumir um método assíncrono em C #, mas, por algum motivo estranho, nunca explique como criar seus próprios métodos assíncronos para consumir. Então, eu tenho esse código agora que consome meu método: private async void button1_Click(object sender, EventArgs e) { var …
196 c#  async-await  c#-5.0 

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.