Hi Alvaro,
What I meant was, seeing that "GDB cannot write memory when
pointing to a thread that is running", I could create a pseudo
thread which is not running and does nothing and so I could point
to it and visualize the memory whilst the other threads are are
running. At the moment, when the memory view is open and
monitoring an address, the only way I can refresh it is by
stopping a thread.
Otherwise, I'm having some trouble figuring out what is going on
with
IMemoryBlockRetrievalExtension. I have tried
following
GDBMemoryBlockRetrieval() but am still no wiser.
Getting back to the example code found at:
Inside the Memory View: A Guide for Debug
Providers which works well without using my launcher,
After calling:
IDebugTarget target = new SampleDebugTarget(launch);
whose constructor looks like this (it extends DebugElement and
implements IDebugTarget, IMemoryBlockRetrievalExtension):
public SampleDebugTarget(ILaunch launch) {
super(null);
fLaunch = launch;
fireEvent(new DebugEvent(this, DebugEvent.CREATE));
}
and then adding the debug target to my launch:
launch.addDebugTarget(target);
Why does the method
getExtendedMemoryBlock() from
SampleDebugTarget()
not get called when I use the memory monitor? Is there something
else I must do for this to happen? I thought it would be enough to
add the debug target to my launch.
Thanks,
Antony
On 29/01/2014 12:50, Alvaro Sanchez wrote: