Multithreaded Debugger
使用多个线程(pthread)进行调试时,GDB存在严重问题。 在调试多线程应用程序时,我个人没有任何GDB特定问题,因此它可能对您详细说明所遇到的"问题"有帮助。这将帮助我们更好地回答您。 过去,我在Linux中调试多线程应用程序时曾使用过多种工具,其中大多数工具是基于GDB而不是取代GDB的。这些包括:
另外,如果您不熟悉Linux调试(即使您不是!),我也强烈建议您标题为"调试Linux应用程序"的论文,您可以在这里找到:
Allinea DDT ...图形调试器,用于用C,C ++和Fortran编写的标量,多线程和大规模并行应用程序。 TotalView是国家实验室用于大型集群的工具。我相信它也对线程并行性有很好的支持。它可能超出了您的价格范围,但您可以免费试用。 从我的搜索中,我没有找到* nix的任何好的多线程调试器。 GDB似乎正在变得更好,上一次我不得不在FreeBSD(7.0-RELEASE)上调试多线程应用程序时,它表现得相当不错,让我找到了错误所在。 Windows的AIX调试器,让您调试多线程应用程序。 我曾经寻找过gdb的替代方案,但不幸的是,我发现的每一个都是基于gdb的。我认为这是因为gdb与gcc紧密相关,并且第三方调试器很难跟上gcc的每次更改。 |