HttpClientBuilderExtensions.SetHandlerLifetime Yöntem
Tanım
Önemli
Bazı bilgiler ürünün ön sürümüyle ilgilidir ve sürüm öncesinde önemli değişiklikler yapılmış olabilir. Burada verilen bilgilerle ilgili olarak Microsoft açık veya zımni hiçbir garanti vermez.
Bir HttpMessageHandler örneğin yeniden kullanılabilmesi için gereken süreyi ayarlar. Adlandırılmış her istemcinin kendi yapılandırılmış işleyici yaşam süresi değeri olabilir. Varsayılan değer iki dakikadır. İşleyici süre sonunu devre dışı bırakmak için yaşam süresini InfiniteTimeSpan olarak ayarlayın.
public:
[System::Runtime::CompilerServices::Extension]
static Microsoft::Extensions::DependencyInjection::IHttpClientBuilder ^ SetHandlerLifetime(Microsoft::Extensions::DependencyInjection::IHttpClientBuilder ^ builder, TimeSpan handlerLifetime);
public static Microsoft.Extensions.DependencyInjection.IHttpClientBuilder SetHandlerLifetime (this Microsoft.Extensions.DependencyInjection.IHttpClientBuilder builder, TimeSpan handlerLifetime);
static member SetHandlerLifetime : Microsoft.Extensions.DependencyInjection.IHttpClientBuilder * TimeSpan -> Microsoft.Extensions.DependencyInjection.IHttpClientBuilder
<Extension()>
Public Function SetHandlerLifetime (builder As IHttpClientBuilder, handlerLifetime As TimeSpan) As IHttpClientBuilder
Parametreler
- builder
- IHttpClientBuilder
- handlerLifetime
- TimeSpan
Döndürülenler
Açıklamalar
varsayılan uygulaması IHttpClientFactory , kaynak tüketimini azaltmak için fabrika tarafından oluşturulan örnekleri havuza HttpMessageHandler alır. Bu ayar, bir işleyicinin havuzdan kaldırılması ve bertaraf edilmesi için zamanlanmasından önce havuza alınabileceği süreyi yapılandırıyor.
her işleyici genellikle kendi temel HTTP bağlantılarını yönettiğinden işleyicilerin havuzalanması tercih edilir; gerektiğinden daha fazla işleyici oluşturmak bağlantı gecikmelerine neden olabilir. Bazı işleyiciler ayrıca bağlantıları süresiz olarak açık tutar ve bu da işleyicinin DNS değişikliklerine tepki vermesini engelleyebilir. değeri handlerLifetime
, uygulamanın ağ ortamındaki değişikliklere yanıt verme gereksiniminin anlaşılmasıyla seçilmelidir.
İşleyicinin süresi hemen işleyiciyi atmayacak. Süresi dolan bir işleyici, işleyicileri yalnızca ulaşılamaz duruma geldiğinde atmak için aralıklarla işlenen ayrı bir havuza yerleştirilir. Uzun süreli HttpClient örneklerin kullanılması, tüm başvurular çöp olarak toplanana kadar temel alınanın HttpMessageHandler atılmasını engeller.