var options = new ParallelOptions
{
    MaxDegreeOfParallelism = 8,
    CancellationToken = cancellationToken
};
await Parallel.ForEachAsync(endpoints, options,
    async (endpoint, token) =>
    {
        var result = await ProbeAsync(endpoint, target, token);
        observations.Add(result);
    });

Yi amfani da rukunin ma'aikata mai iyaka maimakon ƙaddamar da aiki ɗaya don kowane ƙarshen hanya. Don dubawa kan halaltattun manufofin jama'a, jerin wakilai kyauta yana bayar da layukan 'yan takara; riƙe ka'idar kowane shigarwa yayin gina binciken. Wannan guntun tsara .NET yana ɗauka cewa ProbeAsync yana sane da wakili kuma mai tattara observations yana da aminci ga zare. Takwas iyaka ce ta misali, ba ingantaccen ma'auni ba. Binciken yana buƙatar iyaka ga kowane ƙoƙari da soke dukan aikin.

Riƙe kowane sakamakon da aka kammala tare da shigarsa ko da tsarin kammalawa ya bambanta. Rubuta ka'ida, ƙarshen hanya, manufa, hanya, lokacin da ya wuce da sakamako. Rashin haɗi, ƙin shiga wakili, ƙin CONNECT da amsa da aka samu daga shafin abubuwan lura ne daban-daban.

Buɗe tashar TCP ba ya tabbatar da tattaunawa da wakili. Ɗauko adireshin wakili a matsayin shafi ya bambanta da amfani da shi don neman manufar.

Zaɓi manufa da hanya bisa ga ikon da ake buƙata. HEAD na iya adana zirga-zirgar jiki amma ba ya tabbatar da cewa GET yana mayar da abun ciki mai amfani; shafi na iya ƙin ɗaya ya bar ɗayan. HTTPS yana ƙara CONNECT da TLS na inda ake zuwa waɗanda babu su a cikin HTTP mai sauƙi. Adireshin fita wani abin lura ne na gefen inda ake zuwa, dabam da shigarwar da aka saita.

Iyakantaccen aiki yana hana mai dubawa ƙoshi da soket ɗinsa, ƙwaƙwalwarsa ko mai tsara ayyukansa kafin ya iya tantance hanyar. Sakamakon mataki-mataki yana ci gaba da amfani ga manufofin zaɓi ba tare da nuna cewa manufa ɗaya da ta yi nasara ta sa ƙarshen hanya ya zama mai kyau a kowane yanayi ba.

Labarai masu alaƙa