Module  javafx.graphics
软件包  javafx.concurrent

Enum Worker.State

  • All Implemented Interfaces:
    SerializableComparable<Worker.State>
    Enclosing interface:
    Worker < V >


    public static enum Worker.State
    extends Enum<Worker.State>

    工人的状态。 工人的状态转换定义非常明确。 所有工人都处于就绪状态。 在某些情况下,在实际执行之前,工作人员可能被安排执行。 在这种情况下,有时有用的是知道工作人员什么时候与运行时间分开计划。 然而,即使在立即执行“工作”的情况下,在进入运行状态之前,“工作人员”将暂时进入“调度”状态。 也就是说,过渡总是从READY到SCHEDULED到RUNNING(除非工人被取消)。

    运行但未被取消的工人只能在两个状态中的一个状态中完成,即成功或失败。 如果在执行Worker时抛出异常,它只会进入FAILED。 工作人员可以在READY,SCHEDULED或RUNNING时被取消,在这种情况下,最终状态将被取消。 当工人在其中一个情况下被取消时,它将立即转换到已取消状态。

    一个可重用的工作者将从CANCELED,SUCCEEDED或FAILED转换回READY。 从那时起,再次遵循正常状态转换。

    从以下版本开始:
    JavaFX 2.0
    • Enum Constant Detail

      • READY

        public static final Worker.State READY
        表示Worker尚未被执行并准备执行,或者已被重新初始化。 这是Worker的默认初始状态。
      • SCHEDULED

        public static final Worker.State SCHEDULED
        表示工作人员已被安排执行,但它当前没有运行。 这可能是因为Worker在等待线程池中的线程才能开始运行。
      • RUNNING

        public static final Worker.State RUNNING
        表示此Worker正在运行。 这是刚刚在工人实际上做了第一工作之前。
      • SUCCEEDED

        public static final Worker.State SUCCEEDED
        表示此Worker已成功完成,并且有一个有效的结果准备从 value属性读取。
      • FAILED

        public static final Worker.State FAILED
        表示此工作人员失败,通常是由于某些意外情况发生。 可以从exception属性中检索异常。
    • 方法详细信息

      • values

        public static Worker.State[] values​()
        按照它们声明的顺序返回一个包含此枚举类型常量的数组。 该方法可用于遍历常量如下:
          for (Worker.State c : Worker.State.values())
            System.out.println(c); 
        结果
        一个包含这个枚举类型的常量的数组,按照它们被声明的顺序
      • valueOf

        public static Worker.State valueOf​(String name)
        以指定的名称返回此类型的枚举常量。 字符串必须完全匹配用于声明此类型的枚举常量的标识符。 (不允许使用外来空白字符。)
        参数
        name - 要返回的枚举常量的名称。
        结果
        具有指定名称的枚举常数
        异常
        IllegalArgumentException - 如果此枚举类型没有指定名称的常量
        NullPointerException - if the argument is null