PRJ_CANCEL_COMMAND_CB回呼函式 (projectedfslib.h)
通知提供者,應該取消先前叫用回呼的作業。
語法
PRJ_CANCEL_COMMAND_CB PrjCancelCommandCb;
void PrjCancelCommandCb(
[in] const PRJ_CALLBACK_DATA *callbackData
)
{...}
參數
[in] callbackData
作業的相關資訊。 實作此回呼需要下列 callbackData 成員:
- CommandId 識別要取消的作業。
傳回值
無
備註
提供者回呼的每個調用都有一個具有CommandId欄位的callbackData參數。 如果提供者提供此回呼的實作,它應該追蹤其以非同步方式處理的回呼 CommandId 值,也就是從中傳回的回呼 HRESULT_FROM_WIN32 (ERROR_IO_PENDING) ,但尚未透過呼叫 PrjCompleteCommand來完成。 如果提供者收到此回呼,則表示已明確取消導致叫用先前回呼的 I/O,或因為發出于終止的執行緒。 提供者應該儘快取消處理 CommandId 所識別的回呼調用。
在此回呼回呼的 callbackData 中呼叫CommandId的PrjCompleteCommand不是錯誤,但它是無作業,因為導致CommandId所識別回呼調用的 I/O 已經結束。
只有在叫用要取消的回呼之後,ProjFS 才會針對指定的CommandId叫用PRJ_CANCEL_COMMAND_CB。 不過,如果提供者設定為允許多個同時執行的背景工作執行緒,取消和原始調用可能會同時執行。 提供者必須能夠處理這種情況。
此回呼是選擇性的。 如果提供者未提供此回呼的實作,則不會取消其他回呼。 提供者會同步處理所有回呼。
需求
最低支援的用戶端 | Windows 10 版本 1809 [僅限傳統型應用程式] |
最低支援的伺服器 | Windows Server [僅限傳統型應用程式] |
目標平台 | Windows |
標頭 | projectedfslib.h |