Questão de TI - Desenvolvimento de Sistemas — Linguagem C# ("CSharp) — FUNDATEC 2025
TI - Desenvolvimento de SistemasLinguagem C# ("CSharp)
- Código
- qa699686
- Banca
- FUNDATEC
- Órgão
- PROCERGS
- Ano
- 2025
- Cargo
- ANC ( )
Em um serviço ASP.NET Core, fora de manipuladores de evento, qual é o retorno apropriado para métodos assíncronos, considerando observação de exceções, possibilidade de await pelo chamador e boas práticas de escalabilidade?
- APreferir ValueTask/ValueTask<T> em todos os métodos para reduzir alocações; quando o método apenas “dispara e esquece”, usar async void para simplificar.
- BReservar async void apenas para manipuladores de eventos; para métodos de serviço/repositório, retornar Task/Task<T>.
- Cawait não bloqueia, mas em ASP.NET Core o contexto é sempre recapturado; por isso, ConfigureAwait(false) é obrigatório para evitar deadlocks.
- DPara não “segurar” a thread de requisição, envolver todo I/O em Task.Run e retornar void quando não houver resultado.
- ERetornar Task quando houver resultado e async void quando não houver, já que o chamador não precisa aguardar.