From: Romain Beauxis <toots@rastageeks.org>
To: caml-list@inria.fr
Cc: "Savonet's developpers list" <savonet-devl@lists.sourceforge.net>
Subject: ocaml-duppy: an advanced scheduler for ocaml.
Date: Fri, 7 Mar 2008 21:29:32 +0100 [thread overview]
Message-ID: <200803072129.32662.toots@rastageeks.org> (raw)
Hi all !
Along with our project (liquidsoap), we (the savonet team) have developped an
advanced scheduler that we needed for our software. It is now available as a
seperate module, and we hope it could be usefull for some of you.
The basics of this scheduler is to implement a wrapper around Unix.select in
order to be able to wait for events on a socket and/or a given delay and
execute a task when one of the waited events occured.
We also wrote an asynchronous interface as well as a simple I/O interface, in
order to read and write to sockets, or submit an asychronous task to a
scheduler.
Several queues can be run against the same scheduler, each one living in a
different thread. Also, each task has a priority, which can of your favorite
type, and each queue decides if it wants to process a task according to a
predicate passed at its initialisation.
This scheduler can be very usefull to write simple servers, as well as to
develop a multi-thread task processing system. Two simple telnet and http
examples are provided in the source.
You can find more informations on the module there:
http://www.rastageeks.org/duppy.html
In particular, the documentation is available there:
http://www.rastageeks.org/ocaml-duppy/Duppy.html
You can also download the module there:
https://sourceforge.net/project/showfiles.php?group_id=89802&package_id=266393
Romain
--
The bars could not hold me;
Force could not control me now.
They try to keep me down, yeah!
But Jah put I around.
(...)
Let me tell you this -
I'm a duppy conqueror !
next reply other threads:[~2008-03-07 20:29 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2008-03-07 20:29 Romain Beauxis [this message]
2008-03-07 20:58 ` [Caml-list] " Gerd Stolpmann
2008-03-07 21:08 ` Romain Beauxis
2008-03-10 18:57 ` Gerd Stolpmann
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=200803072129.32662.toots@rastageeks.org \
--to=toots@rastageeks.org \
--cc=caml-list@inria.fr \
--cc=savonet-devl@lists.sourceforge.net \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox