首页 > 代码库 > Vs2013在Linux开发中的应用(30):程序中断

Vs2013在Linux开发中的应用(30):程序中断


在我们在gdb中加载程序并运行时,可以按CTRL-C中断执行,此时gdb输出:

^C*stopped,reason="signal-received",signal-name="SIGINT",signal-meaning="Interru

pt",frame={addr="0x00110424",func="__kernel_vsyscall",args=[]},thread-id="1",sto

pped-threads="all",core="3"

在收到此消息后,我们需要使用事件通知SDM

            Send(new AD7AsyncBreakCompleteEvent(), AD7AsyncBreakCompleteEvent.IID, thread);

与此相反的一个过程是,当我们在VS中选择中断时,SDM将调用:

        // The debugger calls CauseBreak when the user clicks on the pause button in VS. The debugger should respond by entering
        // breakmode. 
        public int CauseBreak()

此时我们需要向gdb发送CTRL-C中断程序的执行,在接收到gdb*stopped消息后通知SDM即可。






??

Vs2013在Linux开发中的应用(30):程序中断