Partager via


HttpClientFactoryOptions.HandlerLifetime Propriété

Définition

Obtient ou définit la durée pendant laquelle une instance de HttpMessageHandler peut être réutilisée. Chaque client nommé peut avoir sa propre valeur de durée de vie de gestionnaire configurée. La valeur par défaut de cette propriété est de deux minutes. Définissez la durée de vie sur InfiniteTimeSpan pour désactiver l’expiration du gestionnaire.

public:
 property TimeSpan HandlerLifetime { TimeSpan get(); void set(TimeSpan value); };
public TimeSpan HandlerLifetime { get; set; }
member this.HandlerLifetime : TimeSpan with get, set
Public Property HandlerLifetime As TimeSpan

Valeur de propriété

Remarques

L’implémentation par défaut de IHttpClientFactory regroupera les HttpMessageHandler instances créées par la fabrique pour réduire la consommation de ressources. Ce paramètre configure la durée pendant laquelle un gestionnaire peut être mis en pool avant qu’il soit planifié pour la suppression du pool et la suppression.

Le regroupement de gestionnaires est souhaitable, car chaque gestionnaire gère généralement ses propres connexions HTTP sous-jacentes : créer plus de gestionnaires que nécessaire peut entraîner des délais dans la connexion. Certains gestionnaires conservent également les connexions ouvertes indéfiniment, ce qui peut empêcher le gestionnaire de réagir aux modifications DNS. La valeur de HandlerLifetime doit être choisie en comprenant les exigences de l’application pour répondre aux modifications apportées à l’environnement réseau.

L’expiration d’un gestionnaire ne le supprimera pas immédiatement. Un gestionnaire expiré est placé dans un pool distinct qui est traité à intervalles réguliers pour éliminer les gestionnaires uniquement lorsqu’ils deviennent inaccessibles. L’utilisation d’instances de longue durée HttpClient empêche la suppression du sous-jacent HttpMessageHandler tant que toutes les références ne sont pas collectées à la mémoire.

S’applique à