如果任何光纤遇到异常,是否可以退出该过程?

时间:2018-06-26 01:32:44

标签: exception-handling crystal-lang

现在我有几根带有环的纤维:

spawn {
  begin
    loop { }
  rescue e : MyType
  end
}

我在其中使用begin/rescue来捕获异常,打印消息并退出过程。有没有一种方法可以只指定一次以捕获整个运行程序中的任何异常,而不是在每个不同的光纤中重复使用begin/rescue

1 个答案:

答案 0 :(得分:1)

不。光纤内部任何未经处理的异常都会被抢救并打印到stderr。如果需要执行其他操作,则必须在光纤主体内部捕获异常。