gpt4 book ai didi

C 编程 : Debugging with pthreads

转载 作者:太空狗 更新时间:2023-10-29 16:23:45 25 4
gpt4 key购买 nike

最初对我来说最难适应的事情之一是我第一次在 C 中使用 pthreads 进行大量编程。我习惯于确切地知道要运行的下一行代码是什么,并且我的大部分调试技术都围绕着那种期待。

在 C 中使用 pthreads 进行调试有哪些好的技巧?您可以在没有任何附加工具、您使用的工具或任何其他有助于您调试的情况下建议个人方法。

附言我在 Linux 中使用 gcc 进行 C 编程,但不要因此而限制你的回答

最佳答案

Valgrind是查找竞争条件和 pthreads API 滥用的优秀工具。它保持程序内存(可能还有共享资源)访问的模型,并且即使错误是良性的(这当然意味着它会在以后的某个时候完全出乎意料地变得不那么良性)也会检测丢失的锁。

要使用它,您调用 valgrind --tool=helgrindhere is its manual .此外,还有 valgrind --tool=drd ( manual )。 Helgrind 和 DRD 使用不同的模型,因此他们检测重叠但可能不同的错误集。也可能出现误报。

无论如何,valgrind 为我节省了无数小时的调试时间(虽然不是全部时间:)。

关于C 编程 : Debugging with pthreads,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/981011/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com