Joachim Nilsson 0bba080660 Initial import of Flemming Madsen's LibUEvent
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>
2013-07-18 23:37:07 +02:00
2012-03-14 10:30:20 +01:00

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

  1. Create the event context with lueCtxtCreate()
  2. Register initial callbacks with lueAddInput, lueAddOutput and lueAddTimer
  3. 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.

S
Description
Lightweight event loop library for Linux epoll() family APIs
Readme MIT
951 KiB
Languages
C 71.5%
M4 25%
Makefile 3.4%