From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.1.3 (2006-06-01) on yquem.inria.fr X-Spam-Level: X-Spam-Status: No, score=0.0 required=5.0 tests=none autolearn=disabled version=3.1.3 X-Original-To: caml-list@yquem.inria.fr Delivered-To: caml-list@yquem.inria.fr Received: from mail3-relais-sop.national.inria.fr (mail3-relais-sop.national.inria.fr [192.134.164.104]) by yquem.inria.fr (Postfix) with ESMTP id 5FD1EBBC1 for ; Fri, 7 Mar 2008 21:57:53 +0100 (CET) X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: AhACAGI70UfAXQImh2dsb2JhbACBVo8kAQEBCAopmzcB X-IronPort-AV: E=Sophos;i="4.25,464,1199660400"; d="scan'208";a="10010821" Received: from discorde.inria.fr ([192.93.2.38]) by mail3-smtp-sop.national.inria.fr with ESMTP; 07 Mar 2008 21:57:53 +0100 Received: from mail4-relais-sop.national.inria.fr (mail4-relais-sop.national.inria.fr [192.134.164.105]) by discorde.inria.fr (8.13.6/8.13.6) with ESMTP id m27Kvobr010999 (version=TLSv1/SSLv3 cipher=RC4-SHA bits=128 verify=OK) for ; Fri, 7 Mar 2008 21:57:52 +0100 X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: ApIBAOo60UfU4366n2dsb2JhbACBVo8kAQEBAQEGBAYJCBibJwE X-IronPort-AV: E=Sophos;i="4.25,464,1199660400"; d="scan'208";a="23500862" Received: from moutng.kundenserver.de ([212.227.126.186]) by mail4-smtp-sop.national.inria.fr with ESMTP; 07 Mar 2008 21:57:50 +0100 Received: from gate.lan.gerd-stolpmann.de (dslb-088-068-221-075.pools.arcor-ip.net [88.68.221.75]) by mrelayeu.kundenserver.de (node=mrelayeu0) with ESMTP (Nemesis) id 0MKwh2-1JXjdU2pWm-00063d; Fri, 07 Mar 2008 21:57:48 +0100 Received: from [192.168.0.32] (fw.lan.gerd-stolpmann.de [192.168.1.1]) by gate.lan.gerd-stolpmann.de (Postfix) with ESMTP id 3F167C113; Fri, 7 Mar 2008 21:57:49 +0100 (CET) Subject: Re: [Caml-list] ocaml-duppy: an advanced scheduler for ocaml. From: Gerd Stolpmann To: Romain Beauxis Cc: caml-list@inria.fr, "Savonet's developpers list" In-Reply-To: <200803072129.32662.toots@rastageeks.org> References: <200803072129.32662.toots@rastageeks.org> Content-Type: text/plain Date: Fri, 07 Mar 2008 21:58:26 +0100 Message-Id: <1204923506.21089.36.camel@flake.lan.gerd-stolpmann.de> Mime-Version: 1.0 X-Mailer: Evolution 2.12.1 Content-Transfer-Encoding: 7bit X-Provags-ID: V01U2FsdGVkX1+pcadBmMLyOK0w0fOop3/yF6vTyQF9wboFaSW vS9znv6KZCaz0ms1t+PMTsrED1Flvbh8gbk43Fvk7nqRdlaakm 7shc6lIsi82TZeVclsGPeosV82OkD64 X-Miltered: at discorde with ID 47D1AC4E.000 by Joe's j-chkmail (http://j-chkmail . ensmp . fr)! X-Spam: no; 0.00; scheduler:01 ocaml:01 gerd:01 stolpmann:01 gerd:01 scheduler:01 sockets:01 stolpmann:01 viktoriastr:01 64293:01 darmstadt:01 6151:01 6151:01 sourceforge:01 wrote:01 How is that different from my equeue approach? Gerd Am Freitag, den 07.03.2008, 21:29 +0100 schrieb Romain Beauxis: > 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 -- ------------------------------------------------------------ Gerd Stolpmann * Viktoriastr. 45 * 64293 Darmstadt * Germany gerd@gerd-stolpmann.de http://www.gerd-stolpmann.de Phone: +49-6151-153855 Fax: +49-6151-997714 ------------------------------------------------------------