Freigeben über


IHostTaskManager::CreateTask-Methode

Fordert den Host auf, eine neue Aufgabe zu erstellen.

HRESULT CreateTask (
    [in]  DWORD stacksize, 
    [in]  LPTHREAD_START_ROUTINE pStartAddress,
    [in]  PVOID pParameter,
    [out] IHostTask **ppTask
);

Parameter

  • stacksize
    [in] Die angeforderte Größe des angeforderten Stapels in Bytes bzw. 0 (null) für die Standardgröße.

  • pStartAddress
    [in] Ein Zeiger auf die Funktion, die die Aufgabe ausführen soll.

  • pParameter
    [in] Ein Zeiger auf die Benutzerdaten, die an die Funktion übergeben werden sollen, bzw. NULL, wenn die Funktion keine Parameter verwendet.

  • ppTask
    [out] Ein Zeiger auf die Adresse einer IHostTask-Instanz, die vom Host erstellt wurde, oder NULL, wenn die Aufgabe nicht erstellt werden kann. Die Aufgabe bleibt solange in einem Ruhezustand, bis sie durch einen Aufruf von IHostTask::Start explizit gestartet wird.

Rückgabewert

HRESULT

Beschreibungen

S_OK

CreateTask erfolgreich zurückgegeben.

HOST_E_CLRNOTAVAILABLE

Die Common Language Runtime (CLR) wurde nicht in einen Prozess geladen oder befindet sich in einem Zustand, in dem sie weder verwalteten Code ausführen noch den Aufruf erfolgreich verarbeiten kann.

HOST_E_TIMEOUT

Der Aufruf hat das Zeitlimit überschritten.

HOST_E_NOT_OWNER

Der Aufrufer ist nicht Besitzer der Sperre.

HOST_E_ABANDONED

Ein Ereignis wurde abgebrochen, während ein blockierter Thread oder eine blockierte Fiber auf das Ereignis gewartet hat.

E_FAIL

Ein unbekannter, schwerwiegender Fehler ist aufgetreten. Wenn eine Methode E_FAIL zurückgibt, kann die CLR innerhalb des Prozesses nicht mehr verwendet werden. Nachfolgende Aufrufe von Hostmethoden geben HOST_E_CLRNOTAVAILABLE zurück.

E_OUTOFMEMORY

Es war nicht genügend Arbeitsspeicher verfügbar, um die angeforderte Aufgabe zu erstellen.

Hinweise

Die CLR ruft CreateTask auf, um den Host aufzufordern, eine neue Aufgabe zu erstellen. Der Host gibt einen Schnittstellenzeiger auf eine IHostTask-Instanz zurück. Die zurückgegebene Aufgabe muss solange angehalten bleiben, bis sie durch einen Aufruf von IHostTask::Start explizit gestartet wird.

Anforderungen

Plattformen: siehe Systemanforderungen für .NET Framework.

Header: MSCorEE.h

Bibliothek: als Ressource in MSCorEE.dll enthalten

.NET Framework-Versionen: 4, 3.5 SP1, 3.5, 3.0 SP1, 3.0, 2.0 SP1, 2.0

Siehe auch

Referenz

ICLRTask-Schnittstelle

ICLRTaskManager-Schnittstelle

IHostTask-Schnittstelle

IHostTaskManager-Schnittstelle