Multitasking Preview Release
- Posted by Robert Craig <rds at RapidEuphoria.com> Sep 20, 2005
- 631 views
I've posted, as a User Contribution, the 2.5 PD source interpreter modified for multitasking. It supports several multitasking API calls. It has a scheduler built-in to the interpreter. Instead of the traditional single call stack, each task has its own call-stack, program counter (i.e. current statement) and private variables. By executing task_yield() at any place its code, and at any level of subroutine call, a task can yield control to the scheduler, and get it back later. See readme.txt for more info. Included is a modified version of Language War, converted to use the new API. I also created a graphical (DOS) demo that shows 4 different sorting algorithms running in parallel. For the PD and official interpreters, a major change was/is required in the way that private data is saved/restored. The Translator should be simpler. I don't expect most programs will use multitasking, but it's a lot of fun where appropriate. Regards, Rob Craig Rapid Deployment Software http://www.RapidEuphoria.com