Brian Mitchell wrote:
> On Wed, Nov 19, 2008 at 17:41, Aman Gupta <rubytalk / tmm1.net> wrote:
>   
>>> Fiber in 1.9 equals to Thread of 1.8.
>>>       
>> How can I implement the Fiber API (Fiber.yield and Fiber#resume) in
>> 1.8. Is it possible to use:
>>
>>  rb_thread_save_context(fiber->saved_thread);
>>  rb_thread_restore_context(fiber->saved_thread, RESTORE_NORMAL);
>>
>>  Aman
>>     
>
> It is possible to do something like Fibers quite easily with callcc
> but it won't be nearly as efficient or safe.
>
> Brian.
>   

I'm sorry to inform you that 1.8 threads are implemented on top of
callcc, which means,
1.8 threads == ( 1.9 fibers == 1.8 continuations ) + preemption.
They all have identical implementation, hence have the exactly same
efficacy.