骨灰级大神用print就够了,比如Linux之父Linus Torvalds从不用任何debugger工具:Linus Torvalds: Debugging hell,还有Python之父Guido van Rossum 自称使用print语句排查90%的bug,参考I do not use a debugger。我也经常使用print大法(或者log),基本思路是先定位大体bug位置,比如某个函数调用,然后把关心的变量打印出来,或者在某个分支位置使用print打个tag。尤其是涉及多线程的时候,断点不一定凑效,或者bug不是100%稳定重现,只能使用print大法,触发bug时查看输出的信息。当然,如果能用debug工具,我还是更倾向于使用debug,比如gdb、jdb、pdb,这些工具能够单步调试、监控变量等。
领取专属 10元无门槛券
私享最新 技术干货