HttpClientFactoryOptions.HandlerLifetime Egenskap
Definition
Viktigt
En del information gäller för förhandsversionen av en produkt och kan komma att ändras avsevärt innan produkten blir allmänt tillgänglig. Microsoft lämnar inga garantier, uttryckliga eller underförstådda, avseende informationen som visas här.
Hämtar eller anger hur lång tid en HttpMessageHandler instans kan återanvändas. Varje namngiven klient kan ha en egen livslängd för sin konfigurerade hanterare. Standardvärdet för den här egenskapen är två minuter. Ange livslängden till InfiniteTimeSpan för att inaktivera hanterarens förfallodatum.
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
Egenskapsvärde
Kommentarer
Standardimplementeringen av IHttpClientFactory kommer att poola de HttpMessageHandler instanser som skapats av fabriken för att minska resursförbrukningen. Den här inställningen konfigurerar hur lång tid en hanterare kan poolas innan den schemaläggs för borttagning från poolen och bortskaffande.
Poolning av hanterare är önskvärt eftersom varje hanterare vanligtvis hanterar sina egna underliggande HTTP-anslutningar. om du skapar fler hanterare än nödvändigt kan det leda till anslutningsfördröjningar. Vissa hanterare håller också anslutningarna öppna på obestämd tid, vilket kan hindra hanteraren från att reagera på DNS-ändringar. Värdet HandlerLifetime för bör väljas med en förståelse av programmets krav på att svara på ändringar i nätverksmiljön.
Om en hanterare upphör att gälla tas inte hanteraren bort omedelbart. En hanterare som har upphört att gälla placeras i en separat pool som bearbetas med intervall för att endast ta bort hanterare när de inte kan nås. Om du använder långlivade HttpClient instanser förhindrar du att underliggande HttpMessageHandler tas bort tills alla referenser samlas in.