當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


Scala control.ControlThrowable用法及代碼示例


用法:

abstract class ControlThrowable(message: String) extends Throwable

用於流控製的可拋出對象的父類。

ControlThrowable 的實例通常不應被捕獲。

為方便起見,NonFatalControlThrowable 不匹配。

import scala.util.control.{Breaks, NonFatal}, Breaks.{break, breakable}

breakable {
  for (v <- values) {
    try {
      if (p(v)) break
      else ???
    } catch {
      case NonFatal(t) => log(t)  // can't catch a break
    }
  }
}

抑製被禁用,因為流控製不應該抑製異常情況。堆棧跟蹤也被禁用,允許安全地重用ControlThrowable 的實例。

ControlThrowable 的實例通常不應有原因。遺留子類可以使用 initCause 設置原因。

源碼:

ControlThrowable.scala

相關用法


注:本文由純淨天空篩選整理自scala-lang.org大神的英文原創作品 control.ControlThrowable。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。