設定特定作業的作業逾時。
語法
MI_INLINE MI_Result MI_OperationOptions_SetTimeout(
[in, out] MI_OperationOptions *options,
[in] const MI_Interval *timeout
);
參數
[in, out] options
MI_OperationOptions 結構的指標。
[in] timeout
新作業逾時值的指標。
傳回值
指定函式傳回碼的 MI_Result 列舉值。 這可以是下列其中一個程序代碼。
備註
呼叫 MI_DestinationOptions_SetTimeout 函式,即可在目的地選項中設定此逾 時 。 不過,有時候一項作業可能需要比其他作業更長的時間。 因此,最好為所有作業設定合理的預設值,然後使用此函式覆寫可能需要較長時間的特定作業。
如果用戶端要求進度,而且提供者正在報告進度,則會在每個進度報告之後重新啟動逾時間隔。 針對列舉/訂閱/關聯,間隔是物件在逾時之前傳遞前的最大長度, (受限於進度批注) 。
如果用戶端透過 Windows 遠端管理在 CIM 作業) () (可能需要更長的時間。 由於作業可能會分割為從伺服器擷取架構資訊的子作業,而用戶端仍會繼續作業,即使一或多個架構擷取子作業已被無法連線的伺服器封鎖也一樣。
若要減輕此問題,並讓客戶端報告結果而不需過多等候時間,請嘗試下列其中一個或兩個步驟:
-
叫用下列命令,將 WinRM 網络延遲時間設定為非常低的值: winrm set winrm/config/client @{NetworkDelayms=“DesiredValue”} ,其中 DesiredValue 是網络延遲值,以毫秒為單位。 可以指定的最低網路延遲是500毫秒。
網路延遲值有助於在到達目標計算機時考慮網路等待時間。 不過,如果您設定了小型網路延遲和作業逾時值,您可能無法與需要很長時間的目標計算機通訊。 此外,網路延遲值的變更會影響整個機器,而不只是一項作業。
-
啟動作業 (呼叫具有 「MI_Session_」 前置詞的函式) 時,請在 flags 參數中指定 MI_OPERATIONFLAGS_STANDARD_RTTI 旗標。
這會變更作業行為,如此一來,如果擷取架構子作業失敗,作業就會中止並立即完成,而不是等待後續的擷取架構子作業完成。 因此,如果伺服器在作業啟動時一律無法連線,作業完成所花費的時間量會等於作業逾時值和 WinRM 網路延遲值的總和。
規格需求
| 需求 | 值 |
|---|---|
| 最低支援的用戶端 | Windows 8 |
| 最低支援的伺服器 | Windows Server 2012 |
| 目標平台 | Windows |
| 標頭 | mi.h |
| 可轉散發套件 | windows Server 2008 R2 SP1、Windows 7 SP1 和 Windows Server 2008 SP2 上的 Windows Management Framework 3.0 |
另請參閱
MI_DestinationOptions_SetTimeout