So, Ruby 1.9.1 is now declared stable. Rails is supposed to work with it and slowly gems are being ported to it.
It has native threads and a global interpreter lock
The threads in 1.9 are native, but they have been "slowed down" to allow only one thread to run at a time. This is because it would confuse existing code, if the threads really ran in parallel.
Pros:
Cons:
priority()
is different between Solaris, Windows, and Linux. Things like loop {}
run fine in Linux, other threads get a chance to run. However, on Solaris threads that thread hogs the process's time and you'll never exit!