2
A
回答
3
我想,當一個線程被掛起GDB制止和線程B繼續執行
你的問題是假設一個單核電腦,這是極其罕見的現在。
如果你有一個多核CPU,那麼和 A和B將同時執行,你的問題是沒有意義的。
即使假定您正在單核CPU上執行,您所要求的功能(我預期)也是無用的:典型的多線程程序會在兩個線程之間切換幾萬次達到任何「有趣」的代碼。當然你不想continue
10,000次?
在調試多線程代碼時,通常希望assert
各種不變量在程序執行過程中保持不變。設置斷點和單步執行很少有助於多線程調試。
相關問題
- 1. 暫停按鈕在切換播放/暫停時不工作
- 2. 線程暫停
- 3. 切換鍵啓動和暫停程序
- 4. 當目標暫停時,STM32切換PIN
- 5. 如何在主線程停止/暫停線程/ Activity在android中暫停/停止?
- 6. 在Java中按鍵時暫停/取消暫停線程
- 7. IntelliJ - 在調試時暫停線程
- 8. pthread - 暫停/暫停所有線程
- 9. 暫停和取消暫停線程
- 10. 主線程暫停
- 11. Ruby暫停線程
- 12. 暫停在工作線程
- 13. 在ExitDialog上暫停線程
- 14. 暫停和停止線程
- 15. 暫停gdb無斷點
- 16. 切換按鈕暫停/取消暫停音頻監聽器
- 17. 主線程暫停運行時異常
- 18. 如何暫停計時器線程
- 19. 在多線程的過程中,當gdb中的「[切換到線程]」?
- 20. 在Python中暫停進程或線程
- 21. gdb在NetBeans下暫停 - 如何?
- 22. 多線程暫停第二個線程
- 23. 暫停下載線程
- 24. WPF - 暫停UI線程?
- 25. 「暫停」,線程與屬性
- 26. 暫停/恢復線程?
- 27. 暫停後臺線程()
- 28. 什麼是暫停線程?
- 29. 是主線程暫停嗎?
- 30. Java InterruptedException暫停線程?
我在嵌入式系統中的單個處理器上使用QNX操作系統。我可能在這裏錯了,但是在同一個處理器上連續運行同一進程的線程並不是不同的 - 即使在多核CPU上也是如此。 – MBober
是的,你錯了。多線程的重點在於使單個應用程序可以同時在多核機器中使用多個內核*。 –
問題是我的程序崩潰了整個操作系統,所以我不能確定是否所有的調試消息都是在崩潰之前交付的。當我逐步完成程序時,一切正常。這就是爲什麼我認爲這是一個計時問題。所以我需要找出哪個線程運行時追蹤問題。我注意到,gdb在SIG32中停止,當SIG32的優先級發生變化時它將被髮送到線程。我希望在恢復gdb可能暫停的線程上有相同的信號。 – MBober