fedzor
2/12/2008 2:14:00 AM
On Feb 11, 2008, at 7:00 PM, Jason Roelofs wrote:
> (others can get more specific here, but here's the general idea)
>
> First of all, Ruby does not have concurrency. Not even 1.9 allows
> concurrently running threads. The Ruby VM is a preemptive kernel.
> Eventually Ruby's threads will be system threads *and* fully
> concurrent, but that's a long time from now.
>
> Second, Actors aren't really threads or Fibers. There's a single
> "dispatcher" thread/process/whatever that handles sending out events
> to the pool of actors. So while Actors may look like threads and
> concurrency, they aren't.
>
> So put the two together, and you're going to get sequential code
> execution.
I understand that there isn't really *true* concurrency, but is there
any possible way to get, for example, my previous program to print "6
\n5" instead of "5\n6"? I was hoping for some sort of Thread-like
concurrency, but apparently am just wishing.
~ Ari
English is like a pseudo-random number generator - there are a
bajillion rules to it, but nobody cares.