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
ASP.NET Web API OperationCanceledException quando o navegador cancela a solicitação
Quando um usuário carrega uma página, ele faz uma ou mais solicitações ajax, que atingem os controladores ASP.NET Web API 2. Se o usuário navegar para outra página, antes que essas solicitações ajax sejam concluídas, as solicitações são canceladas pelo navegador. Nosso ELMAH HttpModule então registra dois erros para cada …

2
Diferença entre await e ContinueWith
Alguém pode explicar se awaite ContinueWithsão sinônimos ou não no exemplo a seguir. Estou tentando usar o TPL pela primeira vez e tenho lido toda a documentação, mas não entendo a diferença. Aguarde : String webText = await getWebPage(uri); await parseData(webText); ContinueWith : Task<String> webText = new Task<String>(() => getWebPage(uri)); …

4
Devo evitar manipuladores de eventos 'async void'?
Eu sei que geralmente é considerado uma má ideia usar async voidmétodos de disparar e esquecer para iniciar tarefas, porque não há controle da tarefa pendente e é complicado lidar com exceções que podem ser lançadas dentro de tal método. Em geral, devo evitar async voidmanipuladores de eventos também? Por …

6
O que significa suspender a função em Kotlin Coroutine
Estou lendo Kotlin Coroutine e sei que é baseado em suspendfunções. Mas o que isso suspendsignifica? A co-rotina ou função é suspensa? De https://kotlinlang.org/docs/reference/coroutines.html Basicamente, co-rotinas são cálculos que podem ser suspensos sem bloquear um thread Já ouvi muitas pessoas dizerem "suspender função". Mas acho que é a co-rotina que …

2
Espera por uma tarefa concluída igual a task.Result?
No momento, estou lendo " Concurrency in C # Cookbook ", de Stephen Cleary, e percebi a seguinte técnica: var completedTask = await Task.WhenAny(downloadTask, timeoutTask); if (completedTask == timeoutTask) return null; return await downloadTask; downloadTaské uma chamada para httpclient.GetStringAsynce timeoutTaskestá em execução Task.Delay. Caso não tenha expirado, então downloadTaskjá está …

7
try / catch blocks com async / await
Estou cavando no recurso assíncrono / aguardar do nó 7 e continuo encontrando códigos como este function getQuote() { let quote = "Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco …

2
Tornar as implementações de interface assíncronas
No momento, estou tentando fazer meu aplicativo usando alguns métodos Async. Todo o meu IO é feito por meio de implementações explícitas de uma interface e estou um pouco confuso sobre como tornar as operações assíncronas. A meu ver, tenho duas opções de implementação: interface IIO { void DoOperation(); } …


3
Faça o TransactionScope funcionar com async / await
Estou tentando integrar async/ awaitem nosso barramento de serviço. Implementei um com SingleThreadSynchronizationContextbase neste exemplo http://blogs.msdn.com/b/pfxteam/archive/2012/01/20/10259049.aspx . E ele funciona muito bem, exceto por uma coisa: TransactionScope. Aguardo coisas dentro do TransactionScopee quebre o TransactionScope. TransactionScopenão parece funcionar bem com o async/ await, certamente porque ele armazena coisas no thread …


4
async / await retorna implicitamente a promessa?
Li que as funções assíncronas marcadas pela asyncpalavra - chave retornam implicitamente uma promessa: async function getVal(){ return await doSomethingAync(); } var ret = getVal(); console.log(ret); mas isso não é coerente ... supondo que doSomethingAsync()retorne uma promessa, e a palavra-chave await retornará o valor da promessa, não a promessa em …

2
Por que devo criar operações WebAPI assíncronas em vez de sincronizar?
Eu tenho a seguinte operação em uma API Web que criei: // GET api/<controller> [HttpGet] [Route("pharmacies/{pharmacyId}/page/{page}/{filter?}")] public CartTotalsDTO GetProductsWithHistory(Guid pharmacyId, int page, string filter = null ,[FromUri] bool refresh = false) { return delegateHelper.GetProductsWithHistory(CustomerContext.Current.GetContactById(pharmacyId), refresh); } A chamada para este serviço da web é feita por meio de uma chamada …




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.