RxIndicateChangeOfBufferingStateForSrvOpen 函式 (rxprocs.h)
RxIndicateChangeOfBufferingStateForSrvOpen 會呼叫 來註冊變更緩衝狀態要求(例如 oplock 中斷指示,例如)以供稍後處理。 如果滿足必要的先決條件,則會進一步處理 oplock。
語法
void RxIndicateChangeOfBufferingStateForSrvOpen(
PMRX_SRV_CALL SrvCall,
PMRX_SRV_OPEN SrvOpen,
PVOID SrvOpenKey,
PVOID Context
);
參數
SrvCall
SRV_CALL 結構的指標。
SrvOpen
SRV_OPEN 結構的指標。
SrvOpenKey
索引鍵結構的索引鍵指標SRV_OPEN。
Context
回呼期間要傳回至網路迷你重新導向器的內容指標,用於處理要求。
傳回值
沒有
言論
這個例程會藉由將變更緩衝狀態要求插入註冊清單(DPC 層級處理)或適當的發送器/處理程式清單,來註冊變更緩衝狀態要求。
這是一個實例,其中在緩衝狀態變更指示中,伺服器會使用用戶端產生的密鑰(SRV_OPEN位址本身是可使用的最佳密鑰)。 這表示不需要進一步查閱。
不過,如果此例程是在 DPC 層級呼叫,則會處理指示,就像需要完成查閱一樣。
如果此線程已經取得FCB的資源,則會立即處理緩衝狀態變更指示,而不會進一步延遲。 RxIndicateChangeOfBufferingStateForSrvOpen 會立即呼叫 RxChangeBufferingState。
此例程所呼叫的內部例程可能會因為缺少可用的記憶體而失敗(例如無法配置非分頁集區內存),但由於這是 VOID 例程,當發生此狀況時不會傳回錯誤。
如果可以立即處理緩衝狀態要求,而不是稍後排入佇列進行處理,則可以呼叫 RxChangeBufferingState。
要求
要求 | 價值 |
---|---|
目標平臺 | 桌面 |
標頭 | rxprocs.h (包括 Rxprocs.h、Struchdr.h、Fcb.h) |
IRQL | <= APC_LEVEL |