[10] RFR for JDK-8169961: Memory leak after debugging session
Langer, Christoph
christoph.langer at sap.com
Mon Jul 17 15:31:18 UTC 2017
Hi Poonam,
> Line 182: Here, eventController.release() is called after the 'vm' is disposed.
> And eventController.release() causes the following statement to be
> executed on the eventcontroller thread after the 'vm' is disposed:
>
> JDWP.VirtualMachine.ReleaseEvents.process(vm);
>
> Which does not seem to be right. Someone from the Serviceability group can
> confirm the correctness of this change.
I think this is okay, because with the new change shouldListen() is called right after the thread returns from wait(). And this will lead to the thread immediately exiting. JDWP.VirtualMachine.ReleaseEvents.process(vm); should not be called in this case.
> Line 330: Instance variable 'VirtualMachineImpl vm' is removed from the
> EventController class. It is being used further down in its run() method. So I
> think it cannot be removed.
The vm object is used from the outer class TargetVM, as EventController is an inner class of it.
So in my view it's all correct but still somebody of the serviceability group might know better...
Best regards
Christoph
More information about the serviceability-dev
mailing list