Begränsad objektsströmcache

Inlästa korsreferensströmmar kan indexera komprimerade medlemmar utan att behålla varje avkodad /Type /ObjStm-behållare i minnet

Bytegräns och fördrivning

ObjectStreamCacheMaxBytes ställer in budgeten för avkodade behållare och är som standard 64 MiB

När en inskjutning korsar budgeten fördrivs inaktiva behållare individuellt i minst-nyligen-använd-ordning medan behållaren som för närvarande betjänar en parser-vy förblir skyddad tills den vyn stängs

En enda behållare som är större än gränsen kan därför vara inläst under sitt aktiva parsa, men behållna byten konvergerar till den konfigurerade gränsen omedelbart därefter

Omladdningsbara medlemmar

Fördrivning bevarar objektnummerindex och validerade medlemsoffsetar

En senare medlemsupplösning öppnar igen den ursprungliga behållarströmmen, återtillämpar dokumentdekryptering och strömfilter samt parsa den begärda medlemmen genom den befintliga noll-kopierings-slicevyn

Ställ in gränsen på noll för att inte behålla några avkodade behållare mellan medlemsupplösningar

Telemetri

GetLoadedObjectStreamCacheInfo rapporterar den konfigurerade gränsen, aktuella och topp-avkodade byten, fördrivnings- och omladdningsantal, medlemscache-träffar och missar samt noll-kopierings-sliceaktivitet

Se även: ObjectStreamCacheMaxBytes, GetLoadedObjectStreamCacheInfo, Zero-kopierings-objektsströmslices