《lvgl基础学习 —— 消息机制》

《lvgl基础学习 —— 消息机制》

1.为什么还要“消息机制”?直接调 Service 不行吗?

  如果直接用service代码可能是这样:

static void slider_cb(lv_event_t *e)
{int val = lv_slider_get_value(slider);service_set_brightness(val);   // 直接调用
}

在 Demo 阶段 OK,但在真实产品会出问题:

  • Service 里可能:

    • 访问硬件(慢)

    • 等待锁

    • 等待 I/O

  • UI 回调 被阻塞

  • 表现为:

    • UI 卡顿

    • 滑动不顺

    • 点击无响应

  UI 回调必须“非常快”