HttpClientBuilderExtensions.SetHandlerLifetime Metoda

Definicja

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

handlerLifetime
TimeSpan

Zwraca

Uwagi

Domyślna implementacja IHttpClientFactory spowoduje utworzenie puli HttpMessageHandler wystąpień utworzonych przez fabrykę w celu zmniejszenia zużycia zasobów. To ustawienie konfiguruje czas, przez jaki program obsługi można utworzyć w puli przed zaplanowaniem usunięcia z puli i usuwania.

Buforowanie programów obsługi jest pożądane, ponieważ każda procedura obsługi zwykle zarządza własnymi podstawowymi połączeniami HTTP; tworzenie 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. HttpClient Używanie długotrwałych wystąpień uniemożliwi usuwanie bazowych HttpMessageHandler danych, dopóki wszystkie odwołania nie zostaną usunięte.

Dotyczy