From: rex goxman Date: 2012-07-09T17:32:29+09:00 Subject: Re: Green threads in 1.9.* ? Robert Klemme wrote in post #1067956: > Eventually you can view any > object as a "green thread" in the way of that Erlang definition (which > I don't know) you gave: "pointer within the Erlang VM pointing off to > some chunk of code/memory inside the Erlang VM". What I'm wondering now (and someone who knows is welcome to answer) is that since we now know I have a totally different definition of "what constitutes green threads" than some here, does Ruby in fact have green threads according to my definition? I was told "no" before, and accepted that answer, but the point is, I was probably told no by someone using a different definition than me. Some questions someone can answer which will be helpful: 1. When a thread is created and used with the Thread class, does a new kernel thread or native thread have to be spawned to deal with it? 2. Related to the first question, would it be common or the norm to have as many kernel threads spawned as threads created with the Thread class? What I'm asking is, say you make a loop which creates AND STORES a few hundred thousand threads from the Thread class. Have you just created a few hundred thousand kernel or native threads, meaning I can go out to the OS and see these things in a process or thread viewer? If it helps, assume this is either a 1 core processor, or a 2-4 core processor (in other words, the number of Threads you create are huge compared to the number of cores). If the answers are "yes" and "yes" I will say Ruby doesn't have green threads any longer. If the answers are "no" and "no" I will say "ah, Ruby kept the green threads after all." -- Posted via http://www.ruby-forum.com/.