Sdílet prostřednictvím


IHostIoCompletionManager::GetHostOverlappedSize – metoda

Získá velikost všech vlastních dat, která hostitel hodlá připojit k vstupně-výstupním požadavkům.

Syntaxe

HRESULT GetHostOverlappedSize (  
    [out] DWORD *pcbSize  
);  

Parametry

pcbSize
[out] Ukazatel na počet bajtů, které by měl modul CLR (Common Language Runtime) přidělit kromě velikosti objektu Win32 OVERLAPPED .

Návratová hodnota

HRESULT Description
S_OK GetHostOverlappedSize ú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 úspěšně zpracovat volá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

Všechna asynchronní V/V volání rozhraní API platformy Windows přebírají objekt Win32 OVERLAPPED , který poskytuje informace, jako je umístění ukazatele souboru. Aby se zachoval stav, aplikace, které dělají asynchronní vstupně-výstupní volání, obvykle přidávají do struktury vlastní data. GetHostOverlappedSize a IHostIoCompletionManager::InitializeHostOverlapped poskytují hostiteli příležitost zahrnout taková vlastní data.

CLR volá metodu GetHostOverlappedSize k určení velikosti vlastních dat, která hostitel hodlá připojit k objektu OVERLAPPED .

Poznámka

GetHostOverlappedSize je volána pouze jednou. Vlastní data hostitele musí mít stejnou velikost pro každý vstupně-výstupní požadavek.

Důležité

Velikost samotného objektu OVERLAPPED není zahrnuta v hodnotě pcbSize.

Další informace o struktuře OVERLAPPED najdete v dokumentaci k platformě Windows.

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

Viz také