HttpClientBuilderExtensions.SetHandlerLifetime Metoda
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Nastaví dobu, po kterou HttpMessageHandler může být instance znovu použita. Každý pojmenovaný klient může mít svou vlastní nakonfigurovanou hodnotu životnosti obsluhy. Výchozí hodnota je dvě minuty. Nastavte životnost tak, aby InfiniteTimeSpan se zakázala vypršení platnosti obslužné rutiny.
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
Návraty
Poznámky
Výchozí implementace IHttpClientFactory bude s fondem HttpMessageHandler instancí vytvořených továrnou, aby se snížila spotřeba prostředků. Toto nastavení konfiguruje dobu, po kterou může být obslužná rutina seskutečněna, než bude naplánováno odebrání z fondu a odstranění.
Sdružování obslužných rutin je žádoucí, protože každá obslužná rutina obvykle spravuje vlastní základní připojení HTTP; vytváření více obslužných rutin, než je nutné, může vést ke zpoždění připojení. Některé obslužné rutiny také udržují připojení otevřená po neomezenou dobu, což může obslužné rutině zabránit v reakci na změny DNS. Hodnota handlerLifetime by měla být zvolena s pochopením požadavku aplikace na reakci na změny v síťovém prostředí.
Vypršení platnosti obslužné rutiny nebude okamžitě likvidovat obslužnou rutinu. Obslužná rutina s vypršenou platností je umístěna do samostatného fondu, který se zpracovává v intervalech, aby se obslužné rutiny vyřadily pouze tehdy, když jsou nedostupné. Použití dlouhodobých HttpClient instancí zabrání uvolnění podkladového objektu HttpMessageHandler , dokud nebudou všechny odkazy uvolněny z paměti.