heartbeat
简介
提供一个高性能的心跳模块,处理定时
组件接口
beat.gs
处理心跳的对象的基础组件
所有能够处理心跳的对象必须提供名称为'do_heartbeat'接口方法
函数原型 | 函数作用 |
---|---|
void start_beat(object heart, float interval) | 开启心跳处理 |
void stop_beat() | 停止心跳处理 |
object get_heart() | 获取心跳对象 |
bool is_beating() | 是不是已经开启心跳处理 |
void change_interval(float interval) | 修改心跳处理间隔 |
void force_trigger_heartbeat() | 强制执行一次心跳处理 |
void delay_invoke(float delay_time, function func) | 延迟一定时长执行一个函数 |
heart.gs
心跳对象
函数原型 | 函数作用 |
---|---|
void dump(bool detail) | 调试接口 - 输出本对象的心跳信息 |
void dump_slot() | 调试接口 - 输出所有槽位信息 |
void start(map config = ) | 启动心跳 |
void stop() | 停止心跳 |
bool is_domain_heart() | 是不是允许处理心跳的对象和心跳对象在不同的域 |
void set_frame_interval(int interval_ms) | 设置心跳处理时的帧间隔 |
int get_last_update_ms() | 获取最近一帧的更新时间 |
void delay_invoke(float t, function func) | 延迟一定时长执行一个函数 |
void register_beat(object beat_ob, int interval_ms) | 注册一个处理心跳的对象 |
void unregister_beat(object beat_ob) | 移除一个处理心跳的对象 |
void update_beat_interval(object beat_ob, int interval_ms) | 更新处理心跳的对象的心跳间隔 |
void force_trigger_heartbeat(object beat_ob) | 强制处理心跳的对象执行一次心跳处理 |
void register_frame_update(function callback) | 注册帧处理函数(每帧都会调用) |
void unregister_frame_update(function callback) | 移除帧处理函数 |
heartbeat.gs
函数原型 | 函数作用 |
---|---|
void dump(bool detail = false) | 调试接口 - 输出所有心跳信息 |
object create_heart(domain d, map config = ) | 创建一个心跳对象 |
void destruct_heart(object h) | 销毁心跳对象 |