차단 비동기 메서드를 사용하면 내 메서드 인 SendAsync가 즉시 반환되고 RedirectToAction이 호출됩니다. 그러나 응답 (이 경우 리디렉션)은 client_SendCompleted가 완료 될 때까지 ASP.NET에서 보내지 않습니다.SmtpClient.SendAsync 내가 간단한 이메일을 보내는 작업을 내 ASP.NET MVC 요청
비주얼 스튜디오 디버거의 실행을보고는가 SendAsync 즉시 (그리고 RedirectToAction이라고합니다) 반환하지만 아무것도 브라우저에서 발생하지 않습니다 이메일이 전송 될 때까지 : 여기
내가 이해하려고 노력 중이 야 무슨 일이야?
client_SendCompleted 안에 중단 점을 넣으면 클라이언트가 디버깅 할 때까지 F5를 누르기 전까지로드가 유지됩니다.
Task.Factory.StartNew (() => SendEmail(), TaskCreationOptions.LongRunning) 동일한 문제가 생깁니 까? –
[절대로 HostingEnvironment.UnregisterObject를 호출해야합니까?] (http://stackoverflow.com/questions/16096378/should-i-never-call-hostingenvironment-unregisterobject) – horgh