如何获取/回溯方法调用堆栈

新自行车

如果method A被其他方法调用,

有什么方法可以知道哪个函数在运行时调用它。

我可以grep整个项目以列出所有可能的调用路径,

但是,如果我可以在运行时知道它,它将对您有所帮助。

我如何通过嵌入一些东西来获得它 method A

例如,呼叫流程可能

C() -> B() -> A()

H()-> G()-> B()-> A()

我想知道最近的3或5个方法调用,

我想在Rails项目中跟踪控制器和助手中的流程,但是我需要使用跟踪器,它向我展示了。

Routing Error

undefined method `on' for Tracer:Class

Try running rake routes for more information on available routes. 

这是我的代码

      Tracer.on
  def generate_nonexisted_book(price)

   ~~~
  end
  Tracer.off
奥雅纳·拉希特(Arup Rakshit)

Ruby有一个名为的stdlibTracer我将通过下面的一个小示例进行演示:

require 'tracer'

Tracer.on
def a;end
def b; a ; end
def c; b ; end
c
Tracer.off

现在让我运行代码:

(arup~>test)$ ruby -v c.rb
ruby 2.0.0p0 (2013-02-24 revision 39474) [i686-linux]
#0:c.rb:4::-: def a;end
#0:c.rb:5::-: def b; a ; end
#0:c.rb:6::-: def c; b ; end
#0:c.rb:7::-: c
#0:c.rb:6:Object:>: def c; b ; end
#0:c.rb:6:Object:-: def c; b ; end
#0:c.rb:5:Object:>: def b; a ; end
#0:c.rb:5:Object:-: def b; a ; end
#0:c.rb:4:Object:>: def a;end
#0:c.rb:4:Object:<: def a;end
#0:c.rb:5:Object:<: def b; a ; end
#0:c.rb:6:Object:<: def c; b ; end
#0:c.rb:8::-: Tracer.off
(arup~>test)$ 

输出中出现了一些符号符号的描述:

  • +> + -调用Ruby方法
  • --在新行上执行代码
  • + <+ -从Ruby方法返回

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何获取/回溯方法调用堆栈

来自分类Dev

在错误时从knitr获取回溯

来自分类Dev

在 gdb 中获取回溯漂亮的打印机错误

来自分类Dev

我正在获取回溯回溯(最近一次通话最近):

来自分类Dev

javascript从方法获取回调

来自分类Dev

如何使用堆栈强制调用 componentWillMount 方法?

来自分类Dev

无法从回溯中识别PHP资源(调用堆栈)

来自分类Dev

如何获取另一个线程的调用堆栈?

来自分类Dev

如何使用Combine返回取回调用的结果?

来自分类Dev

从接口获取回调的最佳方法

来自分类Dev

显示来自repl?的方法调用的回溯?

来自分类Dev

$ .Callbacks:如何获取回调列表的长度

来自分类Dev

如何从回调中获取回报

来自分类Dev

如何在函数外获取回调值

来自分类Dev

如何在fancyBox中获取回调

来自分类Dev

递归调用规则时如何停止回溯

来自分类Dev

从调用堆栈获取函数指针

来自分类Dev

从调用堆栈获取函数指针

来自分类Dev

调用堆栈和评估堆栈如何相关?

来自分类Dev

如何阻止调用堆栈过载?

来自分类Dev

如何更改异步方法调用以防止强制异步调用堆栈

来自分类Dev

无法从控制器中的 HTTP 方法获取回调

来自分类Dev

IOS/Objective-C:从异步方法中获取回调

来自分类Dev

如何使用C#从C ++应用程序获取调用堆栈?

来自分类Dev

Retrofit:如何获取被调用服务方法的名称?

来自分类Dev

房间完成删除或添加项目后如何获取回调?

来自分类Dev

jQuery转换完成后如何获取回调

来自分类Dev

如何获取回购GitHub URL havig ssh以进行克隆?

来自分类Dev

如何获取回叫消息到我网站的后端