summaryrefslogtreecommitdiff
path: root/lib/event.h
AgeCommit message (Collapse)Author
2021-03-12Rate-limit scheduling of work-eventsOndrej Zajicek (work)
In general, events are code handling some some condition, which is scheduled when such condition happened and executed independently from I/O loop. Work-events are a subgroup of events that are scheduled repeatedly until some (often significant) work is done (e.g. feeding routes to protocol). All scheduled events are executed during each I/O loop iteration. Separate work-events from regular events to a separate queue and rate limit their execution to a fixed number per I/O loop iteration. That should prevent excess latency when many work-events are scheduled at one time (e.g. simultaneous reload of many BGP sessions).
2018-10-01Lib: Add and use ev_new_init()Ondrej Zajicek (work)
2014-11-03Fininshing integrated OSPF.Ondrej Zajicek
2000-04-27Event handlers no longer return re-queue flag. Instead of using it, justMartin Mares
call ev_schedule() on the same handler which should work perfectly now.
1999-11-17ev_run() now returns whether the event has been requeued or not.Martin Mares
ev_run_list() now returns number of events which remain in the list.
1999-10-29Events now return a value. If it's non-zero, the event is re-queuedMartin Mares
for processing in next event cycle. This can be used to prevent background actions (hint: user commands) from hogging the CPU for too long time.
1999-02-11Grrr, forgot to commit the event routines themselves :|Martin Mares