-1
의도적으로 실패한 Task.Run() 작업에서 AggregateException을 잡으려고하는데 AggregateException이 발생하지 않습니다. 왜?AggregateException이 Task.Run()에 던져지지 않음
public void EnterWaitingRoom(string val)
{
try
{
Task.Run(() => InvokeHubMethod("HubMethod",
new object[] { val }));
}
catch (AggregateException ex)
{
// This exception is not caught
throw ex;
}
}
private async Task<object> InvokeHubMethod(string method, object[] args)
{
return await Task.Run(() => _hubProxy.Invoke<object>(method,
args).Result);
}
나는 예외가 던져 질 것으로 예상하지만 아니다. 또한 .Wait을 추가하려고 시도했지만 여전히 예외가 발생하지 않습니다. 요청은 Windows UI에서 이루어집니다. 아이디어가 없습니다. 감사.
에서
async/await
를 입력하기 때문에 예외가 –을 던져하지 않습니다 그리고 당신이 AggregateException을 기다리고 언제 어떻게 안쪽 exception => no AggregateException으로 래핑되지 않음 –
Wait()과 여전히 예외가 발생하지 않았다. Task.Run (() => ...)을 시도했다. –