Entendendo a distinção entre a tarefa assíncrona e async em asp.net
em ASP.NET APLICAÇÕES, ASYNCHRONOUS PROGRATIONS APRESENCIA UM REMAÇÃO CRUCIAL NO EMPROPENDIMENTO E APSENSANTIVO. No entanto, entende mal as principais diferenças entre os métodos de tarefas assíncronos e assíncronos podem levar a erros inesperados. Esta pergunta explora por que os métodos Async void podem resultar em uma exceção enquanto os métodos de tarefas assíncronos normalmente não. Eles aumentam a contagem de operações pendentes durante a execução e a diminuem após a conclusão. Esse comportamento pode ser benéfico em certos cenários, como tarefas de incêndio e esquecimento em que o resultado de uma operação não é esperado ou explicitamente aguardado. Exceção:
System.InValidOperationException: um módulo ou manipulador assíncrono concluído enquanto uma operação assíncrona ainda estava pendente essa exceção ocorre porque o ASP.NET espera que todas as operações assíncronas sejam rastreadas por tarefas, que forneçam um ponto central de controle para controle para o controle de controle para o controle de controle. Os métodos assíncronos nulos, ao não retornar uma tarefa, ignoram esse mecanismo de rastreamento, deixando potencialmente as operações excelentes não resolvidas. Ao retornar uma tarefa, os métodos de tarefa assíncronos permitem que o ASP.NET rastreie e aguarde sua conclusão, garantindo que todas as operações pendentes (incluindo tarefas de incêndio e esquecimento) sejam contabilizadas. O método ThisPageWillload, que retorna a tarefa assíncrona, será executada com sucesso, enquanto o método ThisPageWillNotload, que retorna o void assíncrono, resultará na exceção mencionada.
conclusão
while ASYNP Void MethodSs pode ser apropriado para se adequar a ser apropriado
Isenção de responsabilidade: Todos os recursos fornecidos são parcialmente provenientes da Internet. Se houver qualquer violação de seus direitos autorais ou outros direitos e interesses, explique os motivos detalhados e forneça prova de direitos autorais ou direitos e interesses e envie-a para o e-mail: [email protected]. Nós cuidaremos disso para você o mais rápido possível.
Copyright© 2022 湘ICP备2022001581号-3