Moet http-kliënt verbygaande of enkelvoudige wees?

INHOUDSOPGAWE:

Moet http-kliënt verbygaande of enkelvoudige wees?
Moet http-kliënt verbygaande of enkelvoudige wees?

Video: Moet http-kliënt verbygaande of enkelvoudige wees?

Video: Moet http-kliënt verbygaande of enkelvoudige wees?
Video: How To Fix Fivem Not Open / Working Problem - FiveM All Problem Solve 2024, Desember
Anonim

Die HttpClient-klas is meer geskik as 'n singleton vir 'n enkele toepassingdomein. Dit beteken dat die singleton oor verskeie houerklasse gedeel moet word. Met hierdie taktiek kry jy wel 'n enkeling, maar dit maak dit moeilik om te deel. Die HttpClient-klas implementeer die IDisposable-koppelvlak.

Moet ons 'n nuwe enkele instansie van HttpClient vir alle versoeke skep?

Alhoewel dit die IDisposable-koppelvlak implementeer, is dit eintlik 'n gedeelde voorwerp. Dit beteken dat dit onder die deksels terugtrek en draad veilig is. In plaas daarvan om 'n nuwe instansie van HttpClient vir elke uitvoering te skep, moet jy 'n enkele instansie van HttpClient deel vir die hele leeftyd van die toepassing.

Moet jy HttpClient hergebruik?

HttpClient is bedoel om een keer geïnstansieer te word en hergebruik te word deur die lewe van 'n toepassing. Deur 'n HttpClient-klas vir elke versoek te instansieer, sal die aantal voetstukke wat beskikbaar is onder swaar vragte uitput. Dit sal SocketException-foute tot gevolg hê.

Is HttpClient onbestuur?

Alhoewel HttpClient wel indirek die IDisposable-koppelvlak implementeer, is die standaardgebruik van HttpClient nie om dit na elke versoek te ontdoen nie. Die HttpClient-voorwerp is bedoel om te lewe vir so lank as wat jou toepassing HTTP-versoeke moet maak.

Is HttpClient draad-veilig?

HttpClient is ten volle draad-veilig wanneergebruik word met 'n draad-veilige verbinding bestuurder soos MultiThreadedHttpConnectionManager. … Terselfdertyd moet die HttpClient-instansie en verbindingbestuurder tussen alle drade gedeel word vir maksimum doeltreffendheid.

Aanbeveel: