[
Date Prev][
Date Next][
Thread Prev][
Thread Next][
Date Index][
Thread Index]
[
List Home]
[platform-dev] Why does DebugPlugin need eventlisteners in order to schedule runnables?
|
Hi,
I have a question about the scheduling mechanism in
org.eclipse.debug.core.DebugPlugin.
This code in particular:
public boolean shouldSchedule() {
return !(isShuttingDown() ||
fEventListeners.isEmpty());
}
Why does the DebugPlugin need to have EventListeners registered in
order to schedule runnables?
Our use case is a debugger based on TCF. It uses the
RunToLineAdaper from CDT, with an adapter from TCF, in order to
perform a Run To Line action.
In CDT, this code will, through a few steps, end up calling the
shouldSchedule() above:
private void runInBackground(Runnable r) {
DebugPlugin.getDefault().asyncExec(r);
}
There are no EventListeners related to the DebugPlugin regarding
Run To Line in TCF, which makes me confused.
Run To Line just so happens to work if, and only if, I have the
Memory View open, since it has EventListeners registered on the
DebugPlugin. But those listeners are unrelated to Run To Line.
Perhaps I need to reach out to the TCF or CDT mailing list, but
for starters I would be happy if someone could explain why the
shouldSchedule() function looks like it does.
Best regards,
--
Anton Bäckström
Cobham Gaisler
Cobham Gaisler AB, Kungsgatan 12, SE-411 19, GÖTEBORG, Sweden.
+46 (0) 31 775 8650, www.cobhamaes.com/gaisler
Please consider the environment before printing this email