0

我正在尝试在稍后使用线程调用的 proc 中使用 byebug/debugger,但它不起作用。那么如何在 proc 中调试代码呢?

4

1 回答 1

2

您必须确保在其中添加断点的线程最终会调用join.

例如:

myproc = Proc.new do
  Thread.new do
    require 'pry'; binding.pry
  end.join
end

myproc.call

在断点处停止。

然而

myproc = Proc.new do
  Thread.new do
    require 'pry'; binding.pry
  end
end

myproc.call

将不会

于 2017-06-25T20:48:19.210 回答