Share via


ICLRTask::YieldTask Method

Requests that the common language runtime (CLR) put aside the task that the current ICLRTask Interface instance represents, and make the processor time available to other tasks.

HRESULT YieldTask ();

Return Value

HRESULT Description

S_OK

YieldTask returned successfully.

HOST_E_CLRNOTAVAILABLE

The CLR has not been loaded into a process, or the CLR is in a state in which it cannot run managed code or process the call successfully.

HOST_E_TIMEOUT

The call timed out.

HOST_E_NOT_OWNER

The caller does not own the lock.

HOST_E_ABANDONED

An event was canceled while a blocked thread or fiber was waiting on it.

E_FAIL

An unknown catastrophic failure occurred. When a method returns E_FAIL, the CLR is no longer usable within the process. Subsequent calls to hosting methods return HOST_E_CLRNOTAVAILABLE.

Remarks

A host calls YieldTask to request processor resources for other tasks or processes. This method is primarily intended to allow long-running code to give up CPU time. The runtime attempts to put the task that the current ICLRTask instance represents in a state where it can yield processing time, but makes no guarantee of success.

Requirements

Platforms: Windows 2000, Windows XP, Windows Server 2003 family

Header: MSCorEE.idl

Library: Included as a resource in MSCorEE.dll

.NET Framework Version: 2.0

See Also

Reference

ICLRTask Interface
ICLRTaskManager Interface
IHostTask Interface
IHostTaskManager Interface