如何调试Erlang程序

调试是程序开发过程中的非常重要的过程,对于某些调试可能是开发过程中最难的一步,
熟练的掌握调试工具和方法,可以提升我们调试的效率。

Erlang的debugger是一个gui的调试工具。本文将介绍如何使用此工具。

1 编译
只有编译时加上debug_info的模块才能被调试
在erlang shell中加上debug_info标志如下
1>c(MODULE, debug_info).
使用erlc的例子如下:
erlc +debug_info ms.erl

2. 启动
调试器的启动可以通过debugger:start()或者im().
启动可以悬着模式,默认是global模式即所有已知节点此模块

3. 指定要调试模块
  默认是不会有调试的进程,只有指定哪些模块要调试,执行这些模块是,就能对执行此代码的进程进行调试,
  被指定为调试模块的过程被命名为interpreted module。
  通过菜单项Module->Interpret选择文件,没有debug信息的文件将提示失败,
  加载完成之后,就可以通过Module->MODULE->view查看源代码,在代码行双击即可设置断点。

4. 调试
  当一个模块别标志为interpreted之后,我们在此模块代码设置断点,之后启动的进程都会进入调试状态。
  我们也可以通过菜单Process->Attach,attach到一个运行中的进程。

5。特殊情况
我们使用otp的behavior时,我们自动模块都是一些call back, 
正在运行otp behavior的代码,我们看到进程会处于idle状态。

转载:http://blog.csdn.net/xperson/archive/2009/06/08/4250332.aspx

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值