Logo hr.boatexistence.com

Treba li httpclient biti prolazan ili pojedinačni?

Sadržaj:

Treba li httpclient biti prolazan ili pojedinačni?
Treba li httpclient biti prolazan ili pojedinačni?

Video: Treba li httpclient biti prolazan ili pojedinačni?

Video: Treba li httpclient biti prolazan ili pojedinačni?
Video: Эндрю Соломон: Депрессия — наша общая тайна 2024, Svibanj
Anonim

Klasa HttpClient je prikladnija kao singleton za jednu domenu aplikacije. To znači da se singleton treba dijeliti u više klasa spremnika. Uz ovu taktiku, dobivate singleton, ali to otežava dijeljenje. Klasa HttpClient implementira IDisposable sučelje.

Trebamo li stvoriti novu jednu instancu HttpClienta za sve zahtjeve?

Iako implementira IDisposable sučelje, zapravo je zajednički objekt. To znači da je ispod pokrivača ponovno uvučen i siguran. Umjesto stvaranja nove instance HttpClienta za svako izvršenje, trebate dijeliti jednu instancu HttpClient-a za cijeli životni vijek aplikacije.

Trebate li ponovno upotrijebiti

HttpClient je namijenjen za instanciranje jednom i ponovno korištenje tijekom trajanja aplikacije. Instanciranje klase HttpClient za svaki zahtjev iscrpiće broj dostupnih utičnica pod velikim opterećenjem. To će rezultirati pogreškama SocketException.

Je li HttpClient neupravljan?

Iako HttpClient neizravno implementira IDisposable sučelje, standardna upotreba HttpClienta nije odlaganje nakon svakog zahtjeva. Objekt HttpClient namijenjen je da živi onoliko dugo koliko vaša aplikacija treba da postavlja HTTP zahtjeve.

Je li HttpClient siguran niti?

HttpClient je potpuno siguran niti kada se koristi s upraviteljem veza sigurnim u niti kao što je MultiThreadedHttpConnectionManager. … U isto vrijeme, instanca HttpClienta i upravitelj veze trebali bi se dijeliti među svim nitima radi maksimalne učinkovitosti.

Preporučeni: