登录
首页 >  Golang >  Go问答

Python pdb.set_trace() 与 Go Lang 中的调试工具比较

来源:stackoverflow

时间:2024-02-27 22:51:25 412浏览 收藏

怎么入门Golang编程?需要学习哪些知识点?这是新手们刚接触编程时常见的问题;下面golang学习网就来给大家整理分享一些知识点,希望能够给初学者一些帮助。本篇文章就来介绍《Python pdb.set_trace() 与 Go Lang 中的调试工具比较》,涉及到,有需要的可以收藏一下

问题内容

在 python 中,您可以在代码中使用 pdb.set_trace() 在代码到达该点时立即启动 pdb 调试器,而无需处理调试器或断点。 gdb 或任何其他 go 调试器是否有这样的等效项?我看到 https://golang.org/doc/gdb#Naming 但我不知道如何以同样的方式应用它。


正确答案


不,没有这样的等价物。 Python 本质上是解释型1,并且 pdb 只是任何正在运行的 Python 实例的一部分,因此这要容易得多。

不过,一旦您在 gdb 或 dlv 下运行,在某些已知函数中设置断点并不难。从您想要进入调试器的位置调用该函数将使您进入调试器。因此,只需调用 debugging.Stop() 并使用刚刚返回的 Stop 函数编写 debugging 包,而不是 pdb.set_trace 。在那里设置断点并运行程序。

1理论上,Python 可以编译或 JIT 编译,但由于该语言的极端动态特性(例如方法调用),这往往无法与其他语言一起工作。 。向该语言添加一些小限制(不会降低其可用性)将使编译为快速代码变得更加容易。有关更多详细信息,请参阅 Does the Python 3 interpreter have a JIT feature?(删除全局解释器锁也会有很大的回报,但也很困难:请参阅 PyPy FAQ。)

以上就是《Python pdb.set_trace() 与 Go Lang 中的调试工具比较》的详细内容,更多关于的资料请关注golang学习网公众号!

声明:本文转载于:stackoverflow 如有侵犯,请联系study_golang@163.com删除
相关阅读
更多>
最新阅读
更多>
课程推荐
更多>