Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Informuje modul CLR (Common Language Runtime), že hostitel dokončil úlohu, a umožní modulu CLR znovu použít aktuální instanci ICLRTask k reprezentaci jiné úlohy.
Syntaxe
HRESULT Reset (
[in] BOOL fFull
);
Parametry
fFull
[in] true, pokud by modul runtime měl kromě informací o zabezpečení a národním prostředí souvisejících s aktuální ICLRTask instancí resetovat všechny statické hodnoty související s vlákny false. V opačném případě .
Pokud je truehodnota , modul runtime resetuje data uložená pomocí nebo AllocateDataSlotAllocateNamedDataSlot.
Návratová hodnota
| HRESULT | Description |
|---|---|
| S_OK |
Reset úspěšně vráceno. |
| HOST_E_CLRNOTAVAILABLE | ClR nebyl načten do procesu nebo clr je ve stavu, ve kterém nemůže spustit spravovaný kód nebo zpracovat volání. Úspěšně |
| HOST_E_TIMEOUT | Časový limit hovoru vypršel. |
| HOST_E_NOT_OWNER | Volající zámek nevlastní. |
| HOST_E_ABANDONED | Událost byla zrušena, když na ni čekalo blokované vlákno nebo vlákno. |
| E_FAIL | Došlo k neznámému katastrofickému selhání. Když metoda vrátí E_FAIL, CLR už není v rámci procesu použitelný. Následná volání metod hostování vrátí HOST_E_CLRNOTAVAILABLE. |
Poznámky
Modul CLR může recyklovat dříve vytvořené ICLRTask instance, aby se zabránilo režii opakovaného vytváření nových instancí pokaždé, když potřebuje nový úkol. Hostitel tuto funkci povolí voláním ICLRTask::Reset místo ICLRTask::ExitTask po dokončení úkolu. Následující seznam shrnuje normální životní cyklus ICLRTask instance:
Modul runtime vytvoří novou
ICLRTaskinstanci.Modul runtime volá IHostTaskManager::GetCurrentTask , aby získal odkaz na aktuální úlohu hostitele.
Modul runtime volá IHostTask::SetCLRTask pro přidružení nové instance k úloze hostitele.
Úloha se provede a dokončí.
Hostitel zničí úlohu voláním
ICLRTask::ExitTask.
Reset tento scénář změní dvěma způsoby. V kroku 5 výše hostitel zavolá Reset úlohu do čistého stavu a pak oddělí ICLRTask instanci od přidružené instance IHostTask . V případě potřeby může hostitel také uložit instanci do IHostTask mezipaměti pro opakované použití. V kroku 1 výše modul runtime místo vytvoření nové instance načítá z mezipaměti recyklovaný ICLRTask objekt.
Tento přístup funguje dobře, když má hostitel také fond opakovaně použitelných pracovních úkolů. Když hostitel zničí jednu ze svých IHostTask instancí, zničí odpovídající ICLRTask tím, že zavolá ExitTask.
Požadavky
Platformy: Viz Požadavky na systém.
Záhlaví: MSCorEE.h
Knihovny: Zahrnuto jako prostředek v MSCorEE.dll
Verze rozhraní .NET Framework: K dispozici od verze 2.0