最近,我发现catch_backtrace
仅在catch
之后立即调用时才有效。这是预期的行为吗?我正确使用backtrace
吗?
try
div(1,0)
catch e
bt = catch_backtrace()
showerror(STDOUT, e, bt)
end
DivideError: integer division error
in div at ./int.jl:79
in include_string at loading.jl:266
in execute_request_0x535c5df2 at /usr/local/share/julia/site/v0.4/IJulia/src/execute_request.jl:177
in eventloop at /usr/local/share/julia/site/v0.4/IJulia/src/IJulia.jl:141
in anonymous at task.jl:447
try
div(1,0)
catch e
println(3)
bt = catch_backtrace()
showerror(STDOUT, e, bt)
end
3
DivideError: integer division error
答案 0 :(得分:2)
这似乎与IJulia隔离开来。我无法在REPL上重现,并且我在脚本中多次使用catch_backtrace()
(在其他调用之后)。