共用方式為


IHostIoCompletionManager::GetHostOverlappedSize 方法

取得主機想要附加至 I/O 要求之任何自訂資料的大小。

語法

HRESULT GetHostOverlappedSize (  
    [out] DWORD *pcbSize  
);  

參數

pcbSize
[out] 除了 Win32 OVERLAPPED 物件的大小之外,Common Language Runtime (CLR) 也應該配置之位元組數目的指標。

傳回值

HRESULT 描述
S_OK GetHostOverlappedSize 已成功傳回。
HOST_E_CLRNOTAVAILABLE CLR 尚未載入處理序,或 CLR 處於無法執行受控程式碼或成功處理呼叫的狀態。
HOST_E_TIMEOUT 呼叫逾時。
HOST_E_NOT_OWNER 呼叫端未擁有鎖定。
HOST_E_ABANDONED 封鎖的執行緒或 Fiber 在其上等候時,事件遭到取消。
E_FAIL 發生未知的重大失敗。 如果方法傳回 E_FAIL,則 CLR 就無法再用於處理序。 後續對裝載方法發出的呼叫會傳回 HOST_E_CLRNOTAVAILABLE。

備註

Windows 平台 API 的所有非同步 I/O 呼叫都會採用 Win32 OVERLAPPED 物件,以提供檔案指標位置等資訊。 為了維護狀態,進行非同步 I/O 呼叫的應用程式通常會將自訂資料新增至該結構。 GetHostOverlappedSizeIHostIoCompletionManager::InitializeHostOverlapped 會讓主機有機會包含這類自訂資料。

CLR 會呼叫 GetHostOverlappedSize 方法來判斷主機想要附加至 OVERLAPPED 物件之自訂資料的大小。

注意

系統只會呼叫 GetHostOverlappedSize 一次。 對於每個 I/O 要求,主機的自訂資料都必須是相同的大小。

重要

OVERLAPPED 物件本身的大小不會包含在 pcbSize 的值內。

如需 OVERLAPPED 結構的詳細資訊,請參閱 Windows 平台文件。

規格需求

平台:請參閱系統需求

標題: MSCorEE.h

程式庫:包含作為 MSCorEE.dll 中的資源

.NET Framework版本:自 2.0 起提供

另請參閱