调试时 Kubuntu 中的繁忙进程

Busy process in Kubuntu while debugging

本文关键字:进程 Kubuntu 调试      更新时间:2023-10-16

我正在尝试使用Qt Creator编写我的第一个Linux应用程序。有时,在调试期间,我正在编写导致我的应用程序进入某种无限循环的代码。

这会导致我的 KDE 会话冻结。似乎无法使用调试器或任何其他方式停止/暂停进程。几分钟后,桌面会话将自动终止,从而阻止重新启动整个PC。

那么,我该如何调试一个在 Linux 下变得疯狂的进程呢?为什么它会阻止整个桌面和Qt Creator IDE,我怎样才能防止这种情况发生?

有了这几个信息,我会说QtCreator使用GDB,并确保GDB做得很好。通常您的应用程序处于 linux 分时调度中,Ubuntu 会在一段时间后停止您的进程,这段时间取决于您 PC 的容量(内存、nbr CPU 内核(。请记住,如果您的应用程序启动实时线程并以 100% 的速度使用您 PC 的所有内核,冻结是正常的,但即使您在这种情况下,Linux 也保留了一些 μs 来运行其他代码(例如系统代码来杀死它(感谢/proc/sys/kernel/sched_rt_runtime_us...

如果行为类似于 KUBUNTU 错误,我建议您查看系统日志文件:

/var/log/syslog
~/.xsession-errors
/var/log/Xorg.0.log (for the current session)
/var/log/Xorg.0.log.old (for previous session)
/var/log/?dm.log (gdm for gnome, kdm for KDE)

希望这对您有所帮助!