multithreading调试器
使用多个线程(pthreads)进行调试时,GDB存在严重问题。 在* nix上有没有其他适用于C / C ++的好的multithreading调试器?
在调试multithreading应用程序时,我个人没有任何GDB特定问题,因此您可以详细说明您所遇到的“问题”。 它将帮助我们更好地回答您。
在linux中调试multithreading应用程序时,我曾经使用过几种辅助工具,其中大多数都是基于GDB而不是替换它。 这些包括:
- DDD http://www.gnu.org/software/ddd/
- Eclipse http://www.eclipse.org/
- 原生POSIX线程库(NTPL)跟踪工具http://nptltracetool.sourceforge.net/
另外,如果您不熟悉Linux中的调试(即使您不是!),我强烈推荐您可以在此处找到的标题为“调试Linux应用程序”的文章:
http://www.scribd.com/doc/3009706/Debugging-Linux-Applications
Allinea DDT …用于以C,C ++和Fortran编写的标量,multithreading和大规模并行应用程序的图形调试器。
TotalView是国家实验室用于大型集群的内容。 我相信它对线程并行性也有一些很好的支持。 它可能超出了您的价格范围,但您可以免费试用。
从我的搜索,我没有找到任何良好的multithreading调试器* nix。 GDB似乎越来越好,上次我不得不在FreeBSD(7.0-RELEASE)上调试multithreading应用程序时,它的表现相当不错,让我找到错误的位置。
我曾经找过一个gdb替代品,但不幸的是我找到的每一个都是基于gdb。 我认为这是因为gdb与gcc错综复杂地联系在一起,并且第三方调试器很难跟上每个gcc的变化。
用于Windows的AIX调试器,让您调试multithreading应用程序。