Megosztás a következőn keresztül:


IHostTaskManager::LeaveRuntime metódus

Értesíti a gazdagépet, hogy a jelenleg futó feladat elhagyja a közös nyelvi futtatókörnyezetet (CLR), és nem felügyelt kódot ad meg.

Fontos

Az IHostTaskManager::EnterRuntime megfelelő hívása értesíti a gazdagépet, hogy a jelenleg végrehajtó feladat újra megismétli a felügyelt kódot.

Szintaxis

HRESULT LeaveRuntime (  
    [in] SIZE_T target  
);  

Paraméterek

target
[in] A meghívni kívánt nem felügyelt függvény leképezett hordozható végrehajtható fájljának címe.

Visszatérési érték

HRESULT Description
S_OK LeaveRuntime sikeresen visszaadott.
HOST_E_CLRNOTAVAILABLE A CLR nincs betöltve egy folyamatba, vagy a CLR olyan állapotban van, amelyben nem tudja futtatni a felügyelt kódot, vagy nem tudja sikeresen feldolgozni a hívást.
HOST_E_TIMEOUT A hívás túllépte az időkorlátot.
HOST_E_NOT_OWNER A hívó nem rendelkezik a zárral.
HOST_E_ABANDONED Egy esemény megszakadt, miközben egy blokkolt szál vagy szál várt rá.
E_FAIL Ismeretlen katasztrofális hiba történt. Amikor egy metódus E_FAIL ad vissza, a CLR már nem használható a folyamaton belül. Az üzemeltetési módszerek későbbi hívásai HOST_E_CLRNOTAVAILABLE ad vissza.
E_OUTOFMEMORY Nincs elegendő memória a kért foglalás befejezéséhez.

Megjegyzések

A nem felügyelt kód hívásütemezései egymásba ágyazhatók. Az alábbi lista például egy hipotetikus helyzetet ír le, amelyben az IHostTaskManager::ReverseEnterRuntime, IHostTaskManager::ReverseLeaveRuntime hívássorozata LeaveRuntimelehetővé teszi a IHostTaskManager::EnterRuntime gazdagép számára a beágyazott rétegek azonosítását.

Művelet Megfelelő metódushívás
A felügyelt Visual Basic végrehajtható fájl meghív egy C-ben írt nem felügyelt függvényt platformhívás használatával. IHostTaskManager::LeaveRuntime
A nem felügyelt C függvény meghív egy metódust egy C# nyelven írt felügyelt DLL-ben. IHostTaskManager::ReverseEnterRuntime
A felügyelt C# függvény egy másik, C-ben írt nem felügyelt függvényt hív meg, szintén platformhívás használatával. IHostTaskManager::LeaveRuntime
A második nem felügyelt függvény visszaadja a végrehajtást a C# függvénynek. IHostTaskManager::EnterRuntime
A C# függvény visszaadja a végrehajtást az első nem felügyelt függvénynek. IHostTaskManager::ReverseLeaveRuntime
Az első nem felügyelt függvény visszaadja a végrehajtást a Visual Basic programnak. IHostTaskManager::EnterRuntime

Követelmények

Platformok: Lásd: Rendszerkövetelmények.

Fejléc: MSCorEE.h

Könyvtár: Erőforrásként szerepel a MSCorEE.dll

.NET-keretrendszer verziók: 2.0 óta elérhető

Lásd még