mirror of
https://gitlab.nic.cz/labs/bird.git
synced 2024-11-08 12:18:42 +00:00
Allowing to send events to the metaloop's priority list
This commit is contained in:
parent
b114aa0073
commit
422ecddaae
@ -29,6 +29,9 @@ void birdloop_free(struct birdloop *loop);
|
||||
/* Get birdloop's event list */
|
||||
event_list *birdloop_event_list(struct birdloop *loop);
|
||||
|
||||
/* Run this event in this thread's priority event list */
|
||||
void ev_send_this_thread(event *e);
|
||||
|
||||
/* Get birdloop's time heap */
|
||||
struct timeloop *birdloop_time_loop(struct birdloop *loop);
|
||||
#define birdloop_domain(l) (birdloop_time_loop((l))->domain)
|
||||
|
@ -1396,6 +1396,7 @@ birdloop_init(void)
|
||||
timers_init(&main_birdloop.time, &root_pool);
|
||||
|
||||
birdloop_enter_locked(&main_birdloop);
|
||||
this_thread = &main_thread;
|
||||
}
|
||||
|
||||
static void
|
||||
@ -1689,3 +1690,12 @@ birdloop_yield(void)
|
||||
{
|
||||
usleep(100);
|
||||
}
|
||||
|
||||
void
|
||||
ev_send_this_thread(event *e)
|
||||
{
|
||||
if (this_thread == &main_thread)
|
||||
ev_send_loop(&main_birdloop, e);
|
||||
else
|
||||
ev_send(&this_thread->priority_events, e);
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user