From: Francis Cianfrocca Date: 2007-08-23T00:57:01+09:00 Subject: Re: Fibers in Ruby 1.9? ------=_Part_26295_11732720.1187798216288 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit Content-Disposition: inline On 8/22/07, MenTaLguY wrote: > > On Wed, 22 Aug 2007 20:50:12 +0900, "Francis Cianfrocca" < > garbagecat10@gmail.com> wrote: > > From day 1, MS recommended that Fibers not be used in any new code. > > In modern concurrency settings they are becoming increasingly useful, > however. > > Without them, or something like them (e.g. Rubinius Tasks), you must play > some very ugly games to get lightweight concurrency -- see the use of > explicit continuation-passing (functions, not Continuations) in Scala's > actors library for an example of the best that can be hoped for in their > absence. > > Granted, Fibers will make things harder for JRuby. > > -mental > > > Wouldn't Fibers make things harder for everything but Windows? Linux has no equivalent construct whatsoever. (Of course in the later Linux kernels, the Linux threads, which actually are LWPs, don't have nearly as much scheduling overhead as they used to.) ------=_Part_26295_11732720.1187798216288 Content-Type: text/html; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit Content-Disposition: inline On 8/22/07, MenTaLguY <mental@rydia.net> wrote:
On Wed, 22 Aug 2007 20:50:12 +0900, "Francis Cianfrocca" <garbagecat10@gmail.com> wrote:
> From day 1, MS recommended that Fibers not be used in any new code.

In modern concurrency settings they are becoming increasingly useful, however.

Without them, or something like them (e.g. Rubinius Tasks), you must play
some very ugly games to get lightweight concurrency -- see the use of
explicit continuation-passing (functions, not Continuations) in Scala's
actors library for an example of the best that can be hoped for in their
absence.

Granted, Fibers will make things harder for JRuby.

-mental



Wouldn't Fibers make things harder for everything but Windows? Linux has no equivalent construct whatsoever. (Of course in the later Linux kernels, the Linux threads, which actually are LWPs, don't have nearly as much scheduling overhead as they used to.)


------=_Part_26295_11732720.1187798216288--