Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
[platform-debug-dev] Debug Event Sets


An issue has been raised with debug event notification in the debug platform.

It is possible that a debug model may want to fire a set of events that occurred simaltaneously, rather than individual events. For example, it is possible that a "step end" and a "breakpoint" are hit at the same time. In this case two events are fired in sequence rather than together in a set. This can lead to errors for clients processing the events. For example, a client may decide to resume a thread when a step event has completed. It then receives a breakpoint event notification, which is now out-of-date (the thread has already resumed). It would be more accurate, and allow debug event processors to make better decisions, if we provided an event set.

I propose that we add a new event listener interface to the debug platform that looks like this

IDebugEventSetListener
        public void handleDebugEvents(IDebugEvent[] events)

As well, we would add a method to the DebugPlugin to fire event sets. In order not to break existing event handler clients, and allow for simple event processing, the old interface would remain. When an event set is fired, event set listeners receive the event set as a whole, and (old) event listeners would receive the events in sequence. Debug event filtering would remain as is. Each event in an event set would be applied to registered filters before an event is fired.

Comments welcome. As we intend to stabalize the debug API for milestone 4 (March 15), comments are welcome ASAP.

Darin

Back to the top