QB_LOOP_TIMER_ADD(3) libqb Programmer's Manual QB_LOOP_TIMER_ADD(3)

qb_loop_timer_add - Add a timer to the mainloop.

#include <qb/qbloop.h>

int32_t qb_loop_timer_add(
    qb_loop_t                 *l,
    enum qb_loop_priority      p,
    uint64_t                   nsec_duration,
    void                      *data,
    qb_loop_timer_dispatch_fn  dispatch_fn,
    qb_loop_timer_handle      *timer_handle_out
);

l pointer to the loop instance

p the priority

nsec_duration nano-secs in the future to run the dispatch.

data user data passed into the dispatch function

dispatch_fn callback function

timer_handle_out handle to delete the timer if needed.

enum qb_loop_priority {
QB_LOOP_LOW;
QB_LOOP_MED;
QB_LOOP_HIGH;
};

status (0 == ok, -errno == failure)

it is a one-shot job.

qb_loop_job_del(3), qb_loop_run(3), qb_loop_create(3), qb_loop_stop(3), qb_loop_poll_low_fds_event_set(3), qb_loop_signal_del(3), qb_loop_signal_add(3), qb_loop_job_add(3), qb_loop_poll_del(3), qb_loop_destroy(3), qb_loop_timer_expire_time_remaining(3), qb_loop_poll_mod(3), qb_loop_signal_mod(3), qb_loop_timer_del(3), qb_loop_timer_is_running(3), qb_loop_timer_expire_time_get(3), qb_loop_poll_add(3)

Copyright (C) 2010-2020 Red Hat, Inc.
2021-03-03 LIBQB