跳转至

GFJob

API Reference / Standard / 类索引

  • 路径:addons/gf/standard/utilities/jobs/gf_job.gd
  • 模块:Standard
  • 继承:RefCounted
  • API:public
  • 类别:运行时句柄 (runtime_handle)
  • 首次版本:3.17.0

通用异步/分帧任务记录。 只保存任务状态、进度、输入数据、结果和错误文本,不绑定具体业务。

成员概览

类型 名称 签名
枚举 Status enum Status
属性 job_id var job_id: StringName = &""
属性 queue_name var queue_name: StringName = &"default"
属性 status var status: Status = Status.WAITING
属性 data var data: Variant = null
属性 result var result: Variant = null
属性 error_message var error_message: String = ""
属性 progress var progress: float = 0.0
属性 metadata var metadata: Dictionary = {}
属性 created_msec var created_msec: int = 0
属性 started_msec var started_msec: int = 0
属性 finished_msec var finished_msec: int = 0
方法 is_finished func is_finished() -> bool:
方法 to_dict func to_dict() -> Dictionary:
方法 status_name static func status_name(value: Status) -> String:

枚举

Status

  • API:public
enum Status { ## 已入队,尚未开始执行。 WAITING, ## 正在执行。 ACTIVE, ## 已成功完成。 COMPLETED, ## 已失败。 FAILED, ## 已取消。 CANCELLED, }

任务生命周期状态。

属性

job_id

  • API:public
var job_id: StringName = &""

任务 ID。

queue_name

  • API:public
var queue_name: StringName = &"default"

队列名。

status

  • API:public
var status: Status = Status.WAITING

当前状态。

data

  • API:public
var data: Variant = null

任务输入数据。框架不解释该字段。

结构:

  • data: Variant,项目侧任务输入载荷。

result

  • API:public
var result: Variant = null

任务结果。框架不解释该字段。

结构:

  • result: Variant,项目侧任务结果载荷。

error_message

  • API:public
var error_message: String = ""

错误文本。

progress

  • API:public
var progress: float = 0.0

进度,范围建议为 0.0 到 1.0。

metadata

  • API:public
var metadata: Dictionary = {}

项目自定义元数据。框架不解释该字段。

结构:

  • metadata: Dictionary,复制到任务中的项目侧元数据。

created_msec

  • API:public
var created_msec: int = 0

创建时间。

started_msec

  • API:public
var started_msec: int = 0

开始时间。

finished_msec

  • API:public
var finished_msec: int = 0

结束时间。

方法

is_finished

  • API:public
func is_finished() -> bool:

当前任务是否已经进入终态。

返回:已完成、失败或取消时返回 true。

to_dict

  • API:public
func to_dict() -> Dictionary:

转换为 Dictionary。

返回:任务字典。

结构:

  • return: Dictionary,包含 job_id、queue_name、status、status_name、progress、error_message、metadata、时间戳和 has_result。

status_name

  • API:public
static func status_name(value: Status) -> String:

获取状态名称。

参数:

名称 说明
value 状态枚举值。

返回:状态名称。