6 struct timeval next_sched;
7 struct timeval interval;
8 LDAP_STAILQ_ENTRY(re_s) tnext; /* it includes running */
9 LDAP_STAILQ_ENTRY(re_s) rnext;
10 ldap_pvt_thread_start_t *routine;
14 typedef struct runqueue_s {
15 LDAP_STAILQ_HEAD(l, re_s) task_list;
16 LDAP_STAILQ_HEAD(rl, re_s) run_list;
17 ldap_pvt_thread_mutex_t rq_mutex;
21 ldap_pvt_runqueue_insert(
22 struct runqueue_s* rq,
24 ldap_pvt_thread_start_t* routine,
29 ldap_pvt_runqueue_remove(
30 struct runqueue_s* rq,
34 LDAP_F( struct re_s* )
35 ldap_pvt_runqueue_next_sched(
36 struct runqueue_s* rq,
37 struct timeval** next_run
41 ldap_pvt_runqueue_runtask(
42 struct runqueue_s* rq,
47 ldap_pvt_runqueue_stoptask(
48 struct runqueue_s* rq,
53 ldap_pvt_runqueue_isrunning(
54 struct runqueue_s* rq,
59 ldap_pvt_runqueue_resched(
60 struct runqueue_s* rq,
65 ldap_pvt_runqueue_persistent_backload(