首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >调试多线程程序提示

调试多线程程序提示
EN

Stack Overflow用户
提问于 2014-02-26 05:29:48
回答 2查看 470关注 0票数 2

我想知道如何有效地调试multi-threaded programs

我到目前为止所做的事:

  1. 我读了一些gdb引用,但他们都很少谈到multi-thread调试器。
  2. 我使用gdb调试我的c++程序。
  3. linux线程引用

你有什么诀窍要分享?

技能

  1. 1>很好地理解了代码结构。一个线程一个线程调试2>3>在精确的时间戳实现方面。

PS:审批仍然不能解决我的问题。

EN

回答 2

Stack Overflow用户

发布于 2014-02-26 05:38:03

  1. 禁用看门狗
  2. 为每个线程分配一个唯一的id/名称。通过这种方式,您可以在任何函数中获得线程id,并确定是哪个线程执行它。
  3. 了解如何在Visual:http://msdn.microsoft.com/en-us/library/w15yf86f.aspx中使用线程窗口
票数 0
EN

Stack Overflow用户

发布于 2014-02-26 08:40:29

使用调试器来理解程序对于单线程系统可能很好。

对于涉及多个线程的问题,它肯定不起作用。这是根据设计,因为人的本性是单线程。

因此,要进入多线程系统:

  1. 通过阅读和理解源来识别所有线程以及它们如何依赖于另一个线程。
  2. 自行调试每个线程。这可能意味着禁用或同步其他线程。
  3. 根据实现到的精确时间戳添加详细的日志记录,而不是在线程中添加同步

这种方法遵循一次做一件事的范例。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/22032634

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档