ICLRTask2::EndPreventAsyncAbort 方法

允许新的或挂起的线程中止请求导致针对当前线程的线程中止。

HRESULT EndPreventAsyncAbort();

返回值

此方法将返回以下特定的 HRESULT 以及用于指示方法失败的 HRESULT 错误。

HRESULT

说明

S_OK

该方法成功完成。

HOST_E_INVALIDOPERATION

对不是当前线程的线程调用了该方法。

备注

调用该方法会将当前线程的延迟-线程-中止计数器减少一。

ICLRTask2::BeginPreventAsyncAbortEndPreventAsyncAbort 的调用可以嵌套。 只要计数器大于零,就会延迟当前线程的线程中止。

虚拟机 (VM) 会在内部使用此功能公开的功能。 滥用这些方法会导致 VM 中出现未指定的行为。 例如,在 VM 先前已增大计数器的情况下,若在调用 EndPreventAsyncAbort 之前未先调用 BeginPreventAsyncAbort,则会将计数器设置为零。 同样,不会检查内部计数器是否存在溢出情况。 如果因主机和 VM 将计数器增大而导致计数器超出其整数限制,则会产生未指定的行为。

要求

**平台:**请参见 .NET Framework 系统要求

**头文件:**MSCorEE.h

**库:**作为一项资源包含在 MSCorEE.dll 中

**.NET Framework 版本:**4

请参见

参考

ICLRTask2::BeginPreventAsyncAbort 方法

ICLRTask2 接口

ICLRTaskManager 接口

IHostTask 接口

IHostTaskManager 接口

其他资源

承载接口