Ceal iarratas .NET HttpClient trí sheachfhreastalaí le comhartha spriocdháta
Cealaigh an oibríocht líonra féin nuair a théann spriocdháta an tseachfhreastalaí in éag, in ionad teorainn a chur le fanacht an ghlaoiteora amháin.
Cuir an spriocdháta ar aghaidh chuig an oibríocht ar féidir léi an obair líonra a chealú. Do .NET HttpClient atá ann cheana agus atá cumraithe trí sheachfhreastalaí:
using var deadline = new CancellationTokenSource(TimeSpan.FromSeconds(20));
using var response = await client.GetAsync(uri, deadline.Token);Soláthraíonn an feidhmchlár client agus uri. Faigheann an ró-ualú seo an comhartha cealaithe; ní theorannódh amscaí timpeall ar fhanacht a thasc ach fanacht an ghlaoiteora sin. Tá an fhadhb chéanna ag pobalú brataigh chríochnaithe: féadfaidh an glaoiteoir imeacht agus na soicéid agus na hoibrithe fós gnóthach.
Leanann an cealú cur i bhfeidhm an chliaint agus an cosán glanta. Ní gheallann sé go stopfaidh gach gníomh ar leibhéal níos ísle ag treoir bheacht. Lig don chosán sin críochnú agus scaoil na hacmhainní atá ag an oibríocht. Cuir léamh an chomhlachta a rialaítear ar leith san áireamh sa dearadh; le haghaidh oibríocht .NET ResponseHeadersRead nua-aimseartha, cuir an comhartha céanna tríd an léamh comhlachta. Soláthraíonn cliaint eile a gcomhéadain chealaithe, thréigthe agus ghlanta féin.
Teastaíonn toradh don iarracht roimhe seo ó iarracht nua. Coinnigh a aitheantóir agus an seachfhreastalaí roghnaithe, iarr cealú nuair is gá agus seachain an tasc a chailleadh agus ionadaithe á dtosú gan teorainn. Seachas sin féadfaidh críochphointe mall obair a charnadh níos tapúla ná mar a scaoileann an feidhmchlár í.
Teastaíonn láimhseáil ar leith don toradh cianda. B'fhéidir go bhfuil aighneacht faighte ag an gceann scríbe cheana nuair a tharlaíonn an cealú. Úsáid polasaí aisghabhála nó idempotachta an fheidhmchláir; ní chealaíonn stopadh oibre áitiúil gníomh cianda.