On Mon, Mar 31, 2003 at 07:45:30AM -0800, Austin Hastings wrote:I've been thinking about closures, continuations, and coroutines, and one of the interfering points has been threads.
What's the P6 thread model going to be?
As I see it, parrot gives us the opportunity to implement preemptive threading at the VM level, even if it's not available via the OS.
I think we should consider cooperative threading, implemented using continuations. Yielding to another thread would automatically happen when a thread blocks, or upon explicit request by the programmer.
It has many advantages:
And one disadvantage:
Dan doesn't like it. :)
Well, there are actually a lot of disadvantages, but that's the only important one, so it's probably not worth much thought over alternate threading schemes for Parrot at least--it's going with an OS-level preemptive threading model.
No, this isn't negotiable. -- Dan
--------------------------------------"it's like this"------------------- Dan Sugalski even samurai [EMAIL PROTECTED] have teddy bears and even teddy bears get drunk