编程的心路历程中,每个法式员都履历过一遍又一遍的调试,那看着bug一行一行地挤在你的终端里、你的编辑器里,那沉闷疲劳而又详尽入微的打点调试,是怎样的煎熬和奋斗。制止现在,我们开发者可能能想到种种各样的器械来利便调试,最常用的莫过于 printf 这类输出调试了。然而,printf 自己带来的开销是难以被忽略的,在多线程、高速网络传输场景下,甚至可能造成调试历程失败。那么怎么能在只管不降低代码效率的条件下,优雅、轻松地调试我们的法式呢? 谜底是断点调试。
断点调试是一种异常高效的调试方式,其事情方式很简朴,开发者可以在要害位置设置断点,当法式到达该位置时便会制止,让我们可以单步执行代码,考察法式执行状态,逐步发现问题,修复bug。今天要先容的是一款爱不释手的断点调试工具——GDB。
GDB是GNU Debugger的缩写,是一款基于下令行的法式调试工具。要想将 GDB 举行图形化,可以配合一些前端开发的插件。GDB的实时运行能力比漫长而有限的 printf 输出快得多,仅在开发者设置断点时才停下来。此外,GDB 还能够调试一些特殊的下令,好比 Nginx、Golang 等这样一些对照新颖的框架。
无论是对于新手仍是内行,使用 GDB 举行调试都能发现一些亘古未有的快感,使用 GDB 举行断点调试也将成为你调试代码的一种不二之选。