HttpClientBuilderExtensions.SetHandlerLifetime Metoda
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
Określa czas ponownego HttpMessageHandler użycia wystąpienia. Każdy nazwany klient może mieć własną skonfigurowaną wartość okresu istnienia programu obsługi. Wartość domyślna to dwie minuty. Ustaw okres istnienia, aby InfiniteTimeSpan wyłączyć wygaśnięcie programu obsługi.
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
Parametry
- builder
- IHttpClientBuilder
- handlerLifetime
- TimeSpan
Zwraca
Uwagi
Domyślna implementacja IHttpClientFactory klasy spowoduje utworzenie puli HttpMessageHandler wystąpień utworzonych przez fabrykę w celu zmniejszenia zużycia zasobów. To ustawienie umożliwia skonfigurowanie czasu, przez jaki program obsługi może zostać w puli przed zaplanowanym usunięciem z puli i usunięciem.
Buforowanie procedur obsługi jest pożądane, ponieważ każda procedura obsługi zwykle zarządza własnymi podstawowymi połączeniami HTTP; utworzenie większej liczby procedur obsługi niż to konieczne może spowodować opóźnienia połączeń. Niektóre programy obsługi utrzymują również połączenia otwarte na czas nieokreślony, co może uniemożliwić programowi obsługi reagowanie na zmiany DNS. Należy wybrać wartość handlerLifetime z zrozumieniem wymagania aplikacji, aby reagować na zmiany w środowisku sieciowym.
Wygaśnięcie programu obsługi nie spowoduje natychmiastowego usunięcia programu obsługi. Wygasła procedura obsługi jest umieszczana w oddzielnej puli, która jest przetwarzana w odstępach czasu w celu usuwania programów obsługi tylko wtedy, gdy staną się niedostępne. Korzystanie z długotrwałych HttpClient wystąpień zapobiega usuwaniu bazowych HttpMessageHandler do momentu, gdy wszystkie odwołania zostaną usunięte.