GFSignalSubscriptionToken¶
API Reference / Kernel / 类索引
- 路径:
addons/gf/kernel/core/gf_signal_subscription_token.gd - 模块:
Kernel - 继承:
GFSubscriptionToken - API:
public - 类别:运行时句柄 (
runtime_handle) - 首次版本:
8.0.0
管理 Godot Signal 连接的订阅句柄。 该句柄把 Signal 连接视为需要显式释放的资源;调用 cancel() 会幂等断开连接。
成员概览¶
| 类型 | 名称 | 签名 |
|---|---|---|
| 方法 | _init |
func _init( source_signal: Signal = Signal(), callback: Callable = Callable(), flags: int = 0, debug_label: String = "" ) -> void: |
| 方法 | connect_owned |
static func connect_owned( source_signal: Signal, owner: Object, callback: Callable, flags: int = 0, debug_label: String = "" ) -> GFLifetimeSubscription: |
| 方法 | get_source_id |
func get_source_id() -> int: |
| 方法 | get_signal_name |
func get_signal_name() -> StringName: |
方法¶
_init¶
- API:
public - 首次版本:
8.0.0
func _init( source_signal: Signal = Signal(), callback: Callable = Callable(), flags: int = 0, debug_label: String = "" ) -> void:
构造函数。
参数:
| 名称 | 说明 |
|---|---|
source_signal |
要连接的 Godot Signal。 |
callback |
Signal 触发时调用的回调。 |
flags |
Godot Signal 连接标记。 |
debug_label |
可选诊断标签。 |
connect_owned¶
- API:
public - 首次版本:
8.0.0
static func connect_owned( source_signal: Signal, owner: Object, callback: Callable, flags: int = 0, debug_label: String = "" ) -> GFLifetimeSubscription:
创建绑定 owner 生命周期的 Signal 订阅。 owner 为 Node 时,节点退出场景树会自动取消订阅;其他 Object owner 仍可通过返回的句柄手动取消。
参数:
| 名称 | 说明 |
|---|---|
source_signal |
要连接的 Godot Signal。 |
owner |
订阅生命周期 owner。 |
callback |
Signal 触发时调用的回调。 |
flags |
Godot Signal 连接标记。 |
debug_label |
可选诊断标签。 |
返回:绑定 owner 生命周期的订阅句柄;参数无效或连接失败时返回非活动句柄。
get_source_id¶
- API:
public - 首次版本:
8.0.0
返回 Signal 来源对象实例 ID;无有效来源时为 0。
返回:Signal 来源对象实例 ID。
get_signal_name¶
- API:
public - 首次版本:
8.0.0
返回 Signal 名称;无有效来源时为空。
返回:Signal 名称。