[Pharo4] EyePointerExplorer
Hi, Pharo4 #155 now contains a Pointer explorer build with the Eye Tree Inspector framework: EyePointerExplorer openOn: #zot EyePointerExplorer openStrongOn: #zot Why is this needed? âââââââââ Currently we still use a sub lass of ObjectExplorer for the PointerExplorer, which means that we can remove the whole package Tool-Explorer now that we have one based on the new inspector. Next step? ââââââ - put the new tool as the default (and unify Smalltalk tools strongPointerExplorer with pointerExplorer) - remove package Tool-Explorer (ca. 700 Loc, 6 classes) Class comment: ============= A variant on the TreeInspector that works "backwards". By default it shows both weak and strong references (#openOn:) but I can be configured to omit weak refs with #openStrongOn: Like the TreeInspector, it shows a tree of objects, but expanding a node won't show the objects which that node references, but rather the objects that reference that node. Its main use is to track down memory leaks: if you want to know why a particular object is still alive, open a PointerExplorer on it and drill down until you find the root object that's referencing it. For example, find all the references to the symbol #zot with: EyePointerExplorer openOn: #zot For the "name" of the object, the PointerExplorer shows each object's identityHash, to allow the user to identify when two similar objects are identical and notice cycles.
Nice and well done (the AST inspector too) ! On 07 Aug 2014, at 11:17, Marcus Denker <marcus.denker@inria.fr> wrote:
Hi,
Pharo4 #155 now contains a Pointer explorer build with the Eye Tree Inspector framework:
EyePointerExplorer openOn: #zot
EyePointerExplorer openStrongOn: #zot
Why is this needed? âââââââââ
Currently we still use a sub lass of ObjectExplorer for the PointerExplorer, which means that we can remove the whole package Tool-Explorer now that we have one based on the new inspector.
Next step? ââââââ
- put the new tool as the default (and unify Smalltalk tools strongPointerExplorer with pointerExplorer) - remove package Tool-Explorer (ca. 700 Loc, 6 classes)
Class comment: ============= A variant on the TreeInspector that works "backwards".
By default it shows both weak and strong references (#openOn:) but I can be configured to omit weak refs with #openStrongOn:
Like the TreeInspector, it shows a tree of objects, but expanding a node won't show the objects which that node references, but rather the objects that reference that node. Its main use is to track down memory leaks: if you want to know why a particular object is still alive, open a PointerExplorer on it and drill down until you find the root object that's referencing it. For example, find all the references to the symbol #zot with:
EyePointerExplorer openOn: #zot
For the "name" of the object, the PointerExplorer shows each object's identityHash, to allow the user to identify when two similar objects are identical and notice cycles.
On 07 Aug 2014, at 11:17, Marcus Denker <marcus.denker@inria.fr> wrote:
Hi,
Pharo4 #155 now contains a Pointer explorer build with the Eye Tree Inspector framework:
EyePointerExplorer openOn: #zot
EyePointerExplorer openStrongOn: #zot
Why is this needed? âââââââââ
Currently we still use a sub lass of ObjectExplorer for the PointerExplorer, which means that we can remove the whole package Tool-Explorer now that we have one based on the new inspector.
Next step? ââââââ
- put the new tool as the default (and unify Smalltalk tools strongPointerExplorer with pointerExplorer) Done in #156
Note that there is now *only* #pointerExplorer for tools. (which then has to provide openOn: and openStrongOn:)
- remove package Tool-Explorer (ca. 700 Loc, 6 classes)
after https://pharo.fogbugz.com/f/cases/13794/Make-Tools-Explorer-unloadable we can just unload it. Marcus
On 07 Aug 2014, at 12:30, Marcus Denker <marcus.denker@inria.fr> wrote:
- remove package Tool-Explorer (ca. 700 Loc, 6 classes)
after
https://pharo.fogbugz.com/f/cases/13794/Make-Tools-Explorer-unloadable
we can just unload it.
in 4.0 #159 The old Tool-Explorer package is now unloaded. Marcus
participants (3)
-
Marcus Denker -
stepharo -
Sven Van Caekenberghe