ကွန်ရက်အလုပ်ကို ပယ်ဖျက်နိုင်သော လုပ်ဆောင်မှုသို့ သတ်မှတ်ချိန်ကို ပေးပို့ပါ။ proxy မှတစ်ဆင့် ပြင်ဆင်ထားသော ရှိပြီးသား .NET HttpClient အတွက်:

using var deadline = new CancellationTokenSource(TimeSpan.FromSeconds(20));
using var response = await client.GetAsync(uri, deadline.Token);

အပလီကေးရှင်းသည် client နှင့် uri ကို ပံ့ပိုးသည်။ ဤ overload သည် ပယ်ဖျက်ခြင်းတိုကင်ကို လက်ခံသည်။ ၎င်း၏လုပ်ငန်းကို စောင့်ဆိုင်းခြင်းပတ်လည်ရှိ အချိန်ကန့်သတ်ချက်သည် ထိုခေါ်ဆိုသူ၏ စောင့်ဆိုင်းမှုကိုသာ ကန့်သတ်မည်။ ပြီးစီးမှုအလံကို စစ်ဆေးခြင်းတွင်လည်း အလားတူပြဿနာရှိသည်: socket များနှင့် အလုပ်သမားများ မအားလပ်ဘဲ ခေါ်ဆိုသူ ထွက်သွားနိုင်သည်။

ပယ်ဖျက်ခြင်းသည် client ၏ အကောင်အထည်ဖော်မှုနှင့် ရှင်းလင်းရေးလမ်းကြောင်းကို လိုက်နာသည်။ အဆင့်နိမ့်လုပ်ဆောင်မှုတိုင်း တိကျသော ညွှန်ကြားချက်တွင် ရပ်တန့်မည်ဟု ကတိမပေးပါ။ ထိုလမ်းကြောင်းကို အပြီးသတ်ခွင့်ပြုပြီး လုပ်ဆောင်မှုပိုင်ဆိုင်သော အရင်းအမြစ်များကို လွှတ်ပေးပါ။ ဒီဇိုင်းတွင် သီးခြားထိန်းချုပ်ထားသော body ဖတ်ခြင်းကို ထည့်သွင်းပါ။ ခေတ်သစ် .NET ResponseHeadersRead လုပ်ဆောင်မှုအတွက် တူညီသောတိုကင်ကို body ဖတ်ခြင်းမှတစ်ဆင့် ပို့ပါ။ အခြား client များသည် ၎င်းတို့၏ ပယ်ဖျက်ခြင်း၊ ရပ်တန့်ခြင်းနှင့် ရှင်းလင်းခြင်း အင်တာဖေ့စ်များကို ပံ့ပိုးသည်။

ပြန်လည်ကြိုးစားမှုအတွက် ယခင်ကြိုးစားမှု၏ ရလဒ်တစ်ခု လိုအပ်သည်။ ၎င်း၏ အမှတ်အသားနှင့် ရွေးချယ်ထားသော proxy ကို ထိန်းထားပါ၊ လိုအပ်သောအခါ ပယ်ဖျက်ရန် တောင်းဆိုပြီး အစားထိုးများကို အဆုံးမရှိ စတင်စဉ် လုပ်ငန်းဆုံးရှုံးခြင်းကို ရှောင်ပါ။ မဟုတ်ပါက နှေးကွေးသော endpoint သည် အပလီကေးရှင်း လွှတ်ပေးသည်ထက် လုပ်ငန်းများကို ပိုမြန်စွာ စုပုံနိုင်သည်။

အဝေးမှရလဒ်အတွက် သီးခြားကိုင်တွယ်မှု လိုအပ်သည်။ ပယ်ဖျက်မှုဖြစ်ပွားချိန်တွင် ပန်းတိုင်သည် တင်သွင်းမှုကို လက်ခံပြီးဖြစ်နိုင်သည်။ အပလီကေးရှင်း၏ ပြန်လည်ကောင်းမွန်ရေး သို့မဟုတ် idempotency မူဝါဒကို အသုံးပြုပါ။ ဒေသတွင်းအလုပ်ကို ရပ်တန့်ခြင်းသည် အဝေးမှလုပ်ဆောင်မှုကို ပြန်မဖျက်ပါ။

ဆက်စပ်ဆောင်းပါးများ