1QBLOOP.H(3) libqb Programmer's Manual QBLOOP.H(3)
2
3
4
6 qbloop.h - Main loop manages timers, jobs and polling sockets.
7
8
10 #include <qb/qbloop.h>
11
13 Only a weaker sense of priorities is implemented, alluding to distinct
14 set of pros and cons compared to the stronger, strict approach to them
15 as widely applied in this problem space (since the latter gives the ap‐
16 plication more control as the effect of the former can still be
17 achieved with some reductions, whereas it is not straightforward the
18 other way around; cf. static priority task scheduling vs. relative
19 fine-tuning within a single priority domain with nice(2)):
20
21 implicit mitigation for deadlock-prone priority arrangements
22
23 less predictable (proportional probability based, we can talk about an
24 advisory effect of the priorities) responses to the arrival of the
25 high-ranked events (i.e. in the process of the picking the next event
26 to handle from the priority queue when at least two different priori‐
27 ties are eligible at the moment)
28
29 One practical application for this module of libqb is in combination
30 with IPC servers based on qbipcs.h published one (the qb_ipcs_poll_han‐
31 dlers structure maps fittingly to the control functions published
32 here).
33
35 qb_loop_job_del(3), qb_loop_run(3), qb_loop_create(3), qb_loop_stop(3),
36 qb_loop_poll_low_fds_event_set(3), qb_loop_signal_del(3),
37 qb_loop_signal_add(3), qb_loop_job_add(3), qb_loop_poll_del(3),
38 qb_loop_destroy(3), qb_loop_timer_expire_time_remaining(3),
39 qb_loop_poll_mod(3), qb_loop_signal_mod(3), qb_loop_timer_del(3),
40 qb_loop_timer_add(3), qb_loop_timer_is_running(3),
41 qb_loop_timer_expire_time_get(3), qb_loop_poll_add(3)
42
44 Copyright (C) 2010-2020 Red Hat, Inc.
45
46
47
48LIBQB 2023-07-21 QBLOOP.H(3)