什么时候可以在MemorySessionContext之外存在MemorySessionData对象?

问题描述

| 我正在查看IBM WebSpehere 6.1中的一个可移植的heapdump文件,并了解到MemorySessionContext包含一个SessionSimpleHashMap,其中包含代表每个用户HttpSession的所有MemorySessionData对象。我的问题是,为什么我在那个MemorySessionContext \“ container \”之外的堆中看到MemorySessionData对象?     

解决方法

长话短说,“松散”的MSD对象具有通往Portal对象的GC根路径,因此我暂时假定这些是Portal会话;要么那样,要么它们正处于释放过程中,因为它们可能已被容器取消引用,然后放开了……我没有检查所有通往GC根的路径。