HttpClientFactoryOptions.HandlerLifetime Propiedad
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Obtiene o establece el período de tiempo que se puede reutilizar una HttpMessageHandler instancia. Cada cliente con nombre específico puede tener configurado su propio valor de duración del controlador. El valor predeterminado de esta propiedad es de dos minutos. Establezca la duración en InfiniteTimeSpan para deshabilitar la expiración del controlador.
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
Valor de propiedad
Comentarios
La implementación predeterminada de IHttpClientFactory agrupará las HttpMessageHandler instancias creadas por la factoría para reducir el consumo de recursos. Esta configuración configura la cantidad de tiempo que se puede agrupar un controlador antes de que se programe para la eliminación del grupo y la eliminación.
La agrupación de controladores es deseable, ya que cada controlador normalmente administra sus propias conexiones HTTP subyacentes; la creación de más controladores de los necesarios puede dar lugar a retrasos de conexión. Algunos controladores también mantienen abiertas las conexiones indefinidamente, lo que puede impedir que el controlador reaccione a los cambios de DNS. El valor de HandlerLifetime debe elegirse con una comprensión del requisito de la aplicación para responder a los cambios en el entorno de red.
La expiración de un controlador no eliminará inmediatamente el controlador. Un controlador expirado se coloca en un grupo independiente que se procesa a intervalos para eliminar controladores solo cuando se vuelven inaccesibles. El uso de instancias de larga duración HttpClient impedirá que el subyacente HttpMessageHandler se elimine hasta que se recopilen todas las referencias.