IDirectorySearch 的客户端时间限制
客户端可为服务器返回结果集施加时间限制。 当服务器在指定时间段内无法响应查询时,客户端可放弃此搜索,并在稍后重试。
当客户端请求异步搜索时,客户端时间限制首选项非常有用。 在异步搜索中,客户端会发出请求,然后在等待服务器返回结果时继续执行其他任务。 服务器可能会在不通知客户端的情况下变为脱机状态。 在此情况下,客户端不会收到服务器是否仍在处理此查询或是否已不再运行的通知。 客户端时间限制首选项可让客户端控制此类情况。
客户端时间限制的默认值为无限制。 若要设置客户端时间限制,请在传递给 IDirectorySearch::SetSearchPreference 方法的 ADS_SEARCHPREF_INFO 数组中设置 ADS_SEARCHPREF_TIMEOUT 搜索选项,并附带包含客户端时间限制(以秒为单位)的 ADSTYPE_INTEGER 值。 客户端时间限制为零表示没有时间限制。
以下代码示例演示了如何设置客户端时间限制。
ADS_SEARCHPREF_INFO SearchPref;
SearchPref.dwSearchPref = ADS_SEARCHPREF_TIMEOUT;
SearchPref.vValue.dwType = ADSTYPE_INTEGER;
SearchPref.vValue.Integer = 10;