ANNOUNCE: iris-0.1.0 concurrency kit



* What is it?
--------------------

Iris is a library for developing asynchronous and concurrent
applications.  It is a follow up to GTask and provides many new and
desired features such as message passing, work-stealing, and lock-free
data structures.  The name has changed as we were beginning to collide
with GLib namespaces.

Iris is implemented in C and is not API or ABI compatible with GTask.

* Features:
--------------------

   - API for asynchronous tasks with a similar feel to NSOperation
   - Callbacks and Errbacks for tasks similar to Python Twisted
   - Concurrency and message passing similar to CCR
   - A Work-stealing scheduler providing as much as 8x performance over
threads sharing a GAsyncQueue for work items
   - Task dependencies for complex decisions such as "Go do these 3
things in parallel and notify me when complete"
   - A set of lock-free data structures such as stack and queue
   - A dynamic scheduler manager that can migrate threads between
schedulers that need them based on demand
   - Coordination of message passing that arbitrate when messages can be
delivered
   - Bindings for Vala
   - GObject Introspection

* Iris 0.1.0
--------------------

   - Initial release
   - Plenty of leaks, will eat your babies

* Where can I get it?
--------------------

Home page:
   http://github.com/chergert/iris

Issues:
   http://github.com/chergert/iris/issues

Source code:
   http://ftp.dronelabs.com/sources/iris/0.1/iris-0.1.0.tar.gz

Documentation:
   http://docs.dronelabs.com/iris/api/
   http://audidude.com/blog/?p=124
   http://audidude.com/blog/?p=150

Iris requires:
   - glib-2.0 >= 2.16

   Vala bindings:
       - vala >= 0.7

--
Christian Hergert <chris dronelabs com>

Attachment: signature.asc
Description: This is a digitally signed message part



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]