Logo tr.boatexistence.com

Httpclient geçici mi yoksa tekil mi olmalı?

İçindekiler:

Httpclient geçici mi yoksa tekil mi olmalı?
Httpclient geçici mi yoksa tekil mi olmalı?
Anonim

HttpClient sınıfı, tek bir uygulama alanı için bir singleton olarak daha uygundur. Bu, singleton'un birden çok kapsayıcı sınıfı arasında paylaşılması gerektiği anlamına gelir. Bu taktikle bir singleton elde edersiniz, ancak bu paylaşmayı zorlaştırır. HttpClient sınıfı, IDisposable arabirimini uygular.

Tüm istekler için yeni bir tek HttpClient örneği oluşturmalı mıyız?

IDisposable arabirimini uygulamasına rağmen, aslında paylaşılan bir nesnedir. Bu, kapakların altında reentrant ve iplik güvenli olduğu anlamına gelir. Her yürütme için yeni bir HttpClient örneği oluşturmak yerine, uygulamanın tüm kullanım ömrü boyunca tek bir HttpClient örneğini paylaşmalısınız.

HttpClient'i yeniden kullanmalı mısınız?

HttpClient, bir kez somutlaştırılmak üzere tasarlanmıştır ve bir uygulamanın ömrü boyunca yeniden kullanılır. Her istek için bir HttpClient sınıfı başlatmak, ağır yükler altında kullanılabilen soket sayısını tüketecektir. Bu, SocketException hatalarına neden olur.

HttpClient yönetilmiyor mu?

HttpClient, IDisposable arabirimini dolaylı olarak uygulasa da, HttpClient'in standart kullanımı, her istekten sonra onu elden çıkarmak değildir. HttpClient nesnesinin, uygulamanızın HTTP istekleri yapması gerektiği sürece yaşaması amaçlanmıştır.

HttpClient iş parçacığı için güvenli mi?

HttpClient,MultiThreadedHttpConnectionManager gibi iş parçacığı güvenli bir bağlantı yöneticisi ile kullanıldığında tamamen iş parçacığı için güvenlidir. … Aynı zamanda, maksimum verimlilik için HttpClient örneği ve bağlantı yöneticisi tüm iş parçacıkları arasında paylaşılmalıdır.

Önerilen: