mirror of
https://github.com/troglobit/libuev.git
synced 2026-10-02 22:02:36 +07:00
0bba080660c847ad821bab54bd412f0eed030620
This fork is called libuev and will focus solely on embedded Linux systems using C. Patches for other UNIX-like operating systems are welcome. - Remove Lua support, will not be used. - Rename from LibUEvent to libuev where applicable - Add project's MIT license to top of all files, as is customary - Add a LICENSE file, as is customary This MIT licensed code was cloned from the Mercurial repository at Google http://code.google.com/p/libuevent/ which had mislabled the license as "New BSD License", which is wrong. The actual license of the project is https://en.wikipedia.org/wiki/MIT_License Signed-off-by: Joachim Nilsson <troglobit@gmail.com>
libuev - Asynchronous event loop library
The libuev library is a small event library in the style of the venerable Xt(3) event loop.
Basically an event context is created,and handlers for timeounts and stream events can be registered with this context.
After initial setup, the typical application will enter the event loop that will only return at program termination.
The C API
The typical application will do the following steps
- Create the event context with lueCtxtCreate()
- Register initial callbacks with lueAddInput, lueAddOutput and lueAddTimer
- Enter the event loop
Building
Use make:
- make all: The library
- make test: Test and showcase
Installation
Is purely manual, but would be something along the lines of: sudo install -m 444 libuev.so.1 /usr/lib/libuev.so.1
Warning
Not thread safe!
The ctxt structure needs mutex protection in case of multi threaded access.
Languages
C
71.5%
M4
25%
Makefile
3.4%