Logo sl.boatexistence.com

Ali mora biti httpclient prehoden ali enojni?

Kazalo:

Ali mora biti httpclient prehoden ali enojni?
Ali mora biti httpclient prehoden ali enojni?

Video: Ali mora biti httpclient prehoden ali enojni?

Video: Ali mora biti httpclient prehoden ali enojni?
Video: Как использовать ESP32 WiFi и Bluetooth с Arduino IDE, полная информация с примерами и кодом 2024, Maj
Anonim

Razred HttpClient je bolj primeren kot enojni element za eno domeno aplikacije. To pomeni, da je treba singleton deliti v več razredih vsebnikov. S to taktiko dobiš samca, vendar ga je težko deliti. Razred HttpClient izvaja vmesnik IDisposable.

Ali naj ustvarimo nov en sam primerek HttpClient za vse zahteve?

Čeprav implementira vmesnik IDisposable, je pravzaprav predmet v skupni rabi. To pomeni, da je pod pokrovom ponovno vstopen in varen za nit. Namesto ustvarjanja novega primerka HttpClient za vsako izvedbo morate deliti en sam primerek HttpClient za celotno življenjsko dobo aplikacije.

Ali bi morali znova uporabiti

HttpClient je namenjen za enkratno uporaboin ponovno uporabo skozi celotno življenjsko dobo aplikacije. Instanciranje razreda HttpClient za vsako zahtevo bo izčrpalo število vtičnic, ki so na voljo pri velikih obremenitvah. To bo povzročilo napake SocketException.

Ali je HttpClient neupravljan?

Čeprav HttpClient posredno implementira vmesnik IDisposable, standardna uporaba HttpClienta ni odstranitev po vsaki zahtevi. Objekt HttpClient naj bi živel tako dolgo, dokler mora vaša aplikacija izvajati zahteve

Ali je HttpClient nit varen?

HttpClient je popolnoma nitno varen, če se uporablja z upravljalnikom povezav, ki je varen za niti, kot je MultiThreadedHttpConnectionManager. … Hkrati je treba primerek HttpClient in upravitelja povezav deliti z vsemi niti za največjo učinkovitost.

Priporočena: