Lv_timer_handler - What does "lower priority than lv_tick_inc()" mean?

Hey, so in the timer handler documentation the following is mentioned:

To handle the tasks of LVGL you need to call lv_timer_handler() periodically in one of the following:

  • while(1) of main() function
  • timer interrupt periodically (lower priority than lv_tick_inc())
  • an OS task periodically

I was wondering what exactly the

lower priority than lv_tick_inc()

part means. Could somebody explain this?

I’m using an ESP32, and at the moment I handle my ticks like this:

    const esp_timer_create_args_t lvgl_tick_timer_args = {
        .callback = [](void *arg)
        {lv_tick_inc(LVGL_TICK_PERIOD_MS); },
        .name = "lvgl_tick"};
    esp_timer_handle_t lvgl_tick_timer = nullptr;
    ESP_ERROR_CHECK(esp_timer_create(&lvgl_tick_timer_args, &lvgl_tick_timer));
    ESP_ERROR_CHECK(esp_timer_start_periodic(lvgl_tick_timer, LVGL_TICK_PERIOD_MS * 1000));

Is there anything wrong with placing the call to lv_timer_handler() in there as well? Like this:

    const esp_timer_create_args_t lvgl_tick_timer_args = {
        .callback = [](void *arg)
        {lv_tick_inc(LVGL_TICK_PERIOD_MS);
        lv_timer_handler(); },
        .name = "lvgl_tick"};
    esp_timer_handle_t lvgl_tick_timer = nullptr;
    ESP_ERROR_CHECK(esp_timer_create(&lvgl_tick_timer_args, &lvgl_tick_timer));
    ESP_ERROR_CHECK(esp_timer_start_periodic(lvgl_tick_timer, LVGL_TICK_PERIOD_MS * 1000));