LWN.net Logo

ANNOUNCE: iris-0.1.0 concurrency kit

From:  Christian Hergert <chris-AT-dronelabs.com>
To:  gnome-announce-list-AT-gnome.org
Subject:  ANNOUNCE: iris-0.1.0 concurrency kit
Date:  Wed, 22 Apr 2009 16:04:12 -0700
Message-ID:  <1240441452.3770.4.camel@chergert-notebook>
Archive-link:  Article, Thread

* 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>
_______________________________________________
gnome-announce-list mailing list
gnome-announce-list@gnome.org
http://mail.gnome.org/mailman/listinfo/gnome-announce-list


(Log in to post comments)

Copyright © 2009, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds