Bagikan melalui


Batas Waktu Klien dengan IDirectorySearch

Klien dapat memberlakukan batas waktu bagi server untuk mengembalikan tataan hasil. Ketika server gagal merespons kueri dalam periode waktu yang ditentukan, klien dapat meninggalkan pencarian dan mencobanya lagi nanti.

Preferensi batas waktu klien berguna ketika klien meminta pencarian asinkron. Dalam pencarian asinkron, klien membuat permintaan dan kemudian melanjutkan tugas lain sambil menunggu server mengembalikan hasilnya. Ada kemungkinan bahwa server dapat offline tanpa memberi tahu klien. Dalam hal ini, klien tidak akan memiliki pemberitahuan apakah server masih memproses kueri, atau jika tidak lagi aktif. Preferensi batas waktu klien memberi klien beberapa kontrol situasi seperti ini.

Default untuk batas waktu klien tidak terbatas. Untuk mengatur batas waktu klien, atur opsi pencarian ADS_SEARCHPREF_TIMEOUT dengan nilai ADSTYPE_INTEGER yang berisi batas waktu klien, dalam detik, dalam array ADS_SEARCHPREF_INFO yang diteruskan ke metode IDirectorySearch::SetSearchPreference. Batas waktu klien nol menunjukkan tidak ada batas waktu.

Contoh kode berikut menunjukkan cara mengatur batas waktu klien.

ADS_SEARCHPREF_INFO SearchPref;
SearchPref.dwSearchPref = ADS_SEARCHPREF_TIMEOUT;
SearchPref.vValue.dwType = ADSTYPE_INTEGER;
SearchPref.vValue.Integer = 10;