La classe HttpClient és més adequada com a singleton per a un domini d'aplicació únic. Això significa que el singleton s'ha de compartir entre diverses classes de contenidors. Amb aquesta tàctica, obteniu un singleton, però això dificulta compartir-lo. La classe HttpClient implementa la interfície IDdisposable.
Hem de crear una nova instància única de HttpClient per a totes les sol·licituds?
Tot i que implementa la interfície IDdisposable, en realitat és un objecte compartit. Això significa que sota les cobertes és reentrant i sense fil. En lloc de crear una nova instància d'HttpClient per a cada execució, hauríeu de compartir una única instància d'HttpClient durant tota la vida útil de l'aplicació.
Hauria de reutilitzar
HttpClient té la intenció de per ser creat una vegada i reutilitzar-se durant tota la vida d'una aplicació. Instanciar una classe HttpClient per a cada sol·licitud esgotarà el nombre de sòcols disponibles amb càrregues pesades. Això provocarà errors de SocketException.
HttpClient no està gestionat?
Tot i que HttpClient implementa indirectament la interfície IDdisposable, l'ús estàndard d'HttpClient és no eliminar-la després de cada sol·licitud. L'objecte HttpClient està pensat per a viure durant el temps que la vostra aplicació necessiti fer sol·licituds
HttpClient és segur per a fils?
HttpClient és totalment segur quan s'utilitzaamb un gestor de connexions segur com MultiThreadedHttpConnectionManager. … Al mateix temps, la instància HttpClient i el gestor de connexions s'han de compartir entre tots els fils per obtenir la màxima eficiència.