다음을 통해 공유


TaskScheduler.UnobservedTaskException 이벤트

정의

오류가 발생한 작업의 확인되지 않은 예외가 기본적으로 프로세스를 종료하는 예외 에스컬레이션 정책을 트리거하려고 할 때 발생합니다.

public:
 static event EventHandler<System::Threading::Tasks::UnobservedTaskExceptionEventArgs ^> ^ UnobservedTaskException;
public static event EventHandler<System.Threading.Tasks.UnobservedTaskExceptionEventArgs> UnobservedTaskException;
public static event EventHandler<System.Threading.Tasks.UnobservedTaskExceptionEventArgs>? UnobservedTaskException;
[add: System.Security.SecurityCritical]
[remove: System.Security.SecurityCritical]
public static event EventHandler<System.Threading.Tasks.UnobservedTaskExceptionEventArgs> UnobservedTaskException;
member this.UnobservedTaskException : EventHandler<System.Threading.Tasks.UnobservedTaskExceptionEventArgs> 
[<add: System.Security.SecurityCritical>]
[<remove: System.Security.SecurityCritical>]
member this.UnobservedTaskException : EventHandler<System.Threading.Tasks.UnobservedTaskExceptionEventArgs> 
Public Shared Custom Event UnobservedTaskException As EventHandler(Of UnobservedTaskExceptionEventArgs) 

이벤트 유형

특성

설명

이 이벤트는 예외 에스컬레이션 정책(기본적으로 프로세스를 종료)이 트리거되지 않도록 하는 메커니즘을 제공합니다.

개발자가 작업을 기반으로 비동기 코드를 더 쉽게 작성할 수 있도록 관찰되지 않은 예외는 예외를 UnobservedTaskException 발생시키지만 프로세스는 기본적으로 종료되지 않습니다. 대신 이벤트 처리기가 예외를 관찰하는지 여부에 관계없이 이벤트가 발생한 후 런타임에서 예외를 처리합니다. 이 동작을 구성할 수 있습니다. 대신 구성 요소를 사용하여 <ThrowUnobservedTaskExceptions> 프로세스를 종료할 수 있습니다.

<configuration>
   <runtime>
      <ThrowUnobservedTaskExceptions enabled="true"/>
   </runtime>
</configuration>

적용 대상

추가 정보