Tock系统中的异步与同步API及应用实践
1. 文本显示回调函数
当文本显示或出现错误时, text_displayed 函数会被调用。在该函数中,会执行两个操作:
1. 无论文本是否成功显示,都要进行清理工作,即取消回调订阅并释放缓冲区。
2. 验证库的用户是否注册了回调,如果注册了,则以状态和存储的用户数据为参数调用该回调。
2. 同步与异步API概述
2.1 异步API
之前展示的异步API与驱动的工作方式非常相似。但对于应用开发者来说,使用异步API往往有一定难度,因此大多数用户空间库会为驱动提供同步API,即库会实现等待回调所需的所有代码。
2.2 同步API
同步API中的 text_display_show_text_sync 函数与异步版本类似,但它会在整个文本显示完成后才返回。以下是同步API的代码示例:
static void text_displayed_sync (
statuscode_t status, void *user_data
) {
text_display_status_t *display_status =
(text_display_status_t*)user_data;
display_status->done = true;
display_status->status = status;
}
returncode_t text_display_s
超级会员免费看
订阅专栏 解锁全文
50

被折叠的 条评论
为什么被折叠?



