TaskScheduler.UnobservedTaskException Olay

Tanım

Hataya neden olan bir görevin gözlemlenmeyen özel durumu, varsayılan olarak işlemi sonlandıran özel durum yükseltme ilkesini tetiklemek üzere olduğunda gerçekleşir.

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) 

Olay Türü

Öznitelikler

Açıklamalar

Bu olay, özel durum yükseltme ilkesinin (varsayılan olarak işlemi sonlandıran) tetiklenmesini önlemeye yönelik bir mekanizma sağlar.

Geliştiricilerin görevlere göre zaman uyumsuz kod yazmasını kolaylaştırmak için, gözlemlenmeyen özel durumlar özel durumu tetikler UnobservedTaskException , ancak işlem varsayılan olarak sonlandırılmaz. Bunun yerine, bir olay işleyicisinin özel durumu gözlemleyip gözlemlemediğine bakılmaksızın, olay tetiklendikten sonra özel durum çalışma zamanı tarafından işlenir. Bu davranış yapılandırılabilir. Bunun yerine işlemi sonlandırmak için yapılandırma öğesini kullanabilirsiniz <ThrowUnobservedTaskExceptions> :

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

Şunlara uygulanır

Ayrıca bkz.