2017-06-11 2 views
0

Ich versuche, meine erste Linux-Anwendung mit Qt Creator zu schreiben. Manchmal schreibe ich beim Debuggen Code, der meine Anwendung in eine Art Endlosschleife versetzt.Beschäftigter Prozess in Kubuntu beim Debugging

Das verursacht meine KDE-Sitzung einfrieren. Es scheint unmöglich zu sein, den Prozess mit dem Debugger oder auf andere Weise anzuhalten/anzuhalten. Nach einigen Minuten wird die Desktop-Sitzung automatisch beendet, wodurch ein Neustart des gesamten PCs verhindert wird.

Also, wie kann ich einen Prozess debuggen, der unter Linux wild geht? Warum blockiert es die gesamte Desktop- und Qt Creator-IDE und wie kann ich dies verhindern?

Antwort

0

Mit diesen wenigen Informationen würde ich sagen, QtCreator verwendet GDB und sei sicher, dass GDB Dinge gut machen. Normalerweise ist Ihre Anwendung in Linux Timesharing-Planung und Ubuntu wird Ihren Prozess nach einer Periode stoppen, dieser Zeitraum ist abhängig von der Kapazität Ihres PC (Speicher, nbr cpu-core). Denken Sie daran, dass es normal ist einzufrieren, wenn Ihre Anwendung Echtzeit-Threads startet und alle Kerne Ihres PCs zu 100% verwendet, aber selbst wenn Sie in diesem Fall sind, hat Linux einige μs reserviert, um anderen Code auszuführen (zB System Code zu töten) durch/proc/sys/kernel/sched_rt_runtime_us ...

Wenn das Verhalten zu KUbuntu Fehler ähnlich ist, rate ich Ihnen, die Systemprotokolldateien zu sehen:

/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) 

Hope diese wird dir helfen !

Verwandte Themen