有界对象流缓存
已加载交叉引用流可以索引压缩成员,而无需在内存中保留每个解码的 /Type /ObjStm 容器
字节限制与淘汰
ObjectStreamCacheMaxBytes 设置解码容器预算,默认为 64 MiB
当插入超过预算时,非活动容器按最近最少使用顺序逐个淘汰,而当前服务于解析器视图的容器在该视图关闭前保持受保护
因此,大于限制的单个容器可以在其活动解析期间驻留,但保留字节会随后立即收敛到配置的限制
可重新加载成员
淘汰保留对象编号索引和验证后的成员偏移
后续成员解析会重新打开原始容器流,重新应用文档解密和流过滤器,并通过现有的零拷贝切片视图解析请求的成员
将限制设为零可在成员解析之间不保留任何解码容器
遥测
GetLoadedObjectStreamCacheInfo 报告配置的限制、当前和峰值解码字节、淘汰和重新加载计数、成员缓存命中和未命中,以及零拷贝切片活动
另请参阅: ObjectStreamCacheMaxBytes, GetLoadedObjectStreamCacheInfo, Zero-Copy Object-Stream Slices