The API looks to be as good as any. There's no real way to know if it will be a help or a hinderance until we get the code into regular use and start exercising it.
To that end, I think we need to start looking at when/how to merge this branch. I know that prior to 2.6.0 we didn't get a deprecation notice in place for the old system. That leaves us with three options, as far as I can see: 1) Put in a deprecation notice now and wait until after 2.9.0 to rip out the old and jam in the new. 2) Find a way to add the new system in without conflicting with or breaking the old system. 3) Find a way to make the new system "look" like the old system from an API point of view, so that old code that was using threads continues to work, even though the internals are different. We won't have C-level compatibility, but I don't think we were ever exporting any threading functions as part of our supported Embedding/Extending API anyway. I suspect #3 will be the easiest and most straight forward, but other opinions would be highly welcomed. To answer Nat's other questions: - No, I don't think anything important is missing in terms of a baseline green threads implementation - I can't think of any other obvious operations which work well with this kind of concurrency. --Andrew Whitworth On Thu, Aug 26, 2010 at 1:57 PM, Nat Tuck <[email protected]> wrote: > Hey All, > > Now that Google Summer of Code is over, I've got this gsoc_threads > branch that could use some testing and comments. The bad news is that > it doesn't actually let you run threads in parallel on multiple CPUs. > The good news is that it does let you write code in a concurrent style > and do blocking file input without blocking other concurrent tasks. > > Even if you don't have the couple hours to pull down the branch and > take a look, you might be able to help me with a couple other > questions: > > - Does the Task API I've implemented[1] make sense? > - Is there anything important missing? > - What blocking operations should I be handling aside from file input? > > Here are some links to blog posts with more information: > [1] https://www.parrot.org/content/green-threads-task-api > [2] https://www.parrot.org/content/hybrid-threads-gsoc-project-results > [3] https://www.parrot.org/content/green-threads-classic-example > > Thanks, > > -- Nat Tuck, aka Chandon > _______________________________________________ > http://lists.parrot.org/mailman/listinfo/parrot-dev > _______________________________________________ http://lists.parrot.org/mailman/listinfo/parrot-dev
