QB_LOOP_TIMER_ADD(3)

NAME
qb_loop_timer_add - Add a timer to the mainloop.

SYNOPSIS
#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
);

PARAMS
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.

DESCRIPTION

STRUCTURES

enum qb_loop_priority {
      QB_LOOP_LOW;
      QB_LOOP_MED;
      QB_LOOP_HIGH;
};

RETURN VALUE

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

NOTE

it is a one-shot job.

SEE ALSO

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

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