Поделиться через


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>

Применяется к

См. также раздел