Confused on sending the command in SignalManager [message #226772] |
Fri, 14 November 2008 07:08 |
xingyun Messages: 27 Registered: July 2009 Location: Bei jing |
Junior Member |
|
|
Hi All:
I got confused when i was reading the source code of
org.eclipse.cdt.debug.mi.core.cdi.SignalManager
Simply speaking, SignalsManager will send a command "info signals" to
refresh the content in Signals View with the corresponding mi results when
something interesting happens and triggers the listener on UI, which is a
common strategy which is shared by View Parts durring debugging.
Before sending the command via MISession, SignalsManager has to do this:
RxThread rxThread = miSession.getRxThread();
rxThread.setEnableConsole(false);
try{
miSession.postCommand(info_Signals_Command);
} finally {
rxThread.setEnableConsole(true);
}
So this feature results in Console_View :
26 command_1
26 output_of_comand_1
27 command_2
27 output_of_command_2
If i just post command directlly:
// nothing else
miSession.postCommand(info_Signals_Command);
// nothing else
SOMETHIMES i can see this in Console_View:
26 command_1
27 command_2
26 output_of_comand_1
27 output_of_command_2
So, I'm curious that :
Why not put :
rxThread.setEnableConsole(false);
rxThread.setEnableConsole(true);
insideRxThread.java or MISession.java or somewhere else since it's
always useful?
MISession/RxThread would take it into their own control to MAKE SURE
it executed rather than EXPECT clients manage it, am i right?
Thanks
Xing Yun
|
|
|
Powered by
FUDForum. Page generated in 0.03024 seconds