vscode调试C/C++程序时报错:Program received signal SIGINT,Interrupt.0x...... in epoll_wait
使用vscode调试C/C++程序时报错:“Program received signal SIGINT,Interrupt.0x...... in epoll_wait”。然后程序退出了。但是如果不调试,只是运行程序则不会退出。
·
一、现象:
使用vscode调试C/C++程序时报错:“Program received signal SIGINT,Interrupt.0x...... in epoll_wait”。然后程序退出了。但是如果不调试,只是运行程序则不会退出。
二、解决方法:
针对此现象我尝试使用各种解决方法:
(1)我按照文章《Pass SIGINT while pressing ctrl+c on using debugger in vscode》中提出的解决方法,在vscode的DEBUG CONSOLE中输入
-exec handle SIGINT pass
-exec handle SIGINT nostop
发现无法解决。
(2)我尝试忽略SIG_IGN信号,在程序中添加语句如下,但也无法解决。
signal(SIGINT,SIG_IGN);
(3)问题其实是出在gdb和epoll上,最后按照文章《gdb 调试带有 epoll_wait 非正常返回 -1》中所述方法解决了。
开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!
更多推荐
已为社区贡献17条内容
所有评论(0)