ICLRTaskManager::CreateTask メソッド

共通言語ランタイム (CLR) によって新しいタスクが作成されることを明示的に要求します。

構文

HRESULT CreateTask (  
    [out] ICLRTask **pTask  
);  

パラメーター

pTask
[out] 新しく作成された ICLRTask のアドレスへのポインター、またはタスクを作成できなかった場合は null 値。

戻り値

HRESULT 説明
S_OK メソッドから正常に値が返されました。
HOST_E_CLRNOTAVAILABLE CLR がプロセスに読み込まれていないか、CLR がマネージド コードを実行できないまたは呼び出しを正常に処理できない状態です。
HOST_E_TIMEOUT 呼び出しがタイムアウトになりました。
HOST_E_NOT_OWNER 呼び出し元がロックを所有していません。
HOST_E_ABANDONED ブロックされたスレッドまたはファイバーが待機しているときに、イベントが取り消されました。
E_FAIL 原因不明の致命的なエラーが発生しました。 メソッドにより E_FAIL が返されると、そのプロセス内で CLR が使用できなくなります。 後続のホスティング メソッドの呼び出しでは HOST_E_CLRNOTAVAILABLE が返されます。
E_OUTOFMEMORY メモリ不足のため、要求されたリソースを割り当てられません。

解説

ユーザー コードによって System.Threading 名前空間の型を使用してスレッドを作成された、またはスレッド プールのサイズが増加した場合、初期化時 CLR により新しいタスクが自動的に作成されます。 また、アンマネージド コードによってマネージド関数が呼び出される場合にも、タスクが作成されます。

CreateTask は、CLR によって新しいタスクが作成されることをホストが明示的に要求できるようにします。 たとえば、ホストはこのメソッドを呼び出して、データ構造を事前に初期化できます。

重要

新しいタスクは中断状態で返され、ホストが明示的に IHostTask::Start を呼び出すまで中断されたままになります。

必要条件

:システム要件」を参照してください。

ヘッダー: MSCorEE.h

ライブラリ: MSCorEE.dll にリソースとして含まれます

.NET Framework のバージョン: 2.0 以降で使用可能

関連項目