HttpClientFactoryOptions.HandlerLifetime Tulajdonság
Definíció
Fontos
Egyes információk olyan, kiadás előtti termékekre vonatkoznak, amelyek a kiadásig még jelentősen módosulhatnak. A Microsoft nem vállal kifejezett vagy törvényi garanciát az itt megjelenő információért.
Lekérdezi vagy beállítja a HttpMessageHandler példányok újrafelhasználásának időtartamát. Minden megnevezett ügyfél saját konfigurált kezelői élettartam-értékkel rendelkezhet. A tulajdonság alapértelmezett értéke két perc. Állítsa be az élettartamot a InfiniteTimeSpan kezelő lejáratának letiltásához.
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
Tulajdonság értéke
Megjegyzések
Az alapértelmezett implementáció IHttpClientFactory a HttpMessageHandler gyár által létrehozott példányokat egyesíti az erőforrás-felhasználás csökkentése érdekében. Ez a beállítás konfigurálja, hogy a kezelők mennyi ideig lehetnek készletezve, mielőtt a készletből és az ártalmatlanításból való eltávolításra ütemezték volna.
A kezelők készletezése kívánatos, mivel az egyes kezelők általában saját mögöttes HTTP-kapcsolatokat kezelnek; a szükségesnél több kezelő létrehozása kapcsolati késéseket eredményezhet. Egyes kezelők korlátlan ideig nyitva tartják a kapcsolatokat, ami megakadályozhatja, hogy a kezelő reagáljon a DNS-változásokra. Ennek értékét HandlerLifetime úgy kell kiválasztani, hogy tisztában legyen az alkalmazás azon követelményével, hogy reagáljon a hálózati környezet változásaira.
A kezelő lejárata nem törli azonnal a kezelőt. A lejárt kezelők egy külön készletbe kerülnek, amelyet időközönként dolgoznak fel, hogy a kezelőket csak akkor szabadítsák fel, ha elérhetetlenné válnak. A hosszú élettartamú HttpClient példányok használata megakadályozza, hogy a mögöttes adatok HttpMessageHandler el legyenek távolítva, amíg az összes hivatkozás szemétgyűjtésre nem kerül.