private void GdbStopped(StopReasonEnum stopReason, GDBBreakpoint breakpoint, UInt64 address, Int64 status) { _lastDebuggerStop = new DebuggerStop(stopReason, breakpoint, address, status); _gdbStopEventHandler.Set(); }
public IBreakpoint SetSoftwareBreakpoint(ulong address, ulong size, string identifier) { int? breakpointNum = 0; ManualResetEvent evt = new ManualResetEvent (false); QueueCommand (new SetBreakpointCmd (address, delegate(int? num, UInt64 breakpointAddress) { breakpointNum = num; evt.Set (); }, this)); evt.WaitOne (); if (breakpointNum == null) return null; GDBBreakpoint breakpoint = new GDBBreakpoint(this, breakpointNum.Value, address, identifier, BreakpointRemoveFromList ); _breakpoints.Add(breakpointNum.Value, breakpoint); return breakpoint; }