Multiple processes using #nextPutAll:

Bert Freudenberg bert at freudenbergs.de
Sat May 26 18:00:08 UTC 2007


On May 26, 2007, at 18:26 , J J wrote:

> Aha, ok, maybe the VM just checks every 250ms to see if a higher  
> priority is ready to run.

That would mean you could only have 4 process switches per second  
which obviously is not true.

> But then, there probably will be one everytime (e.g. UI handling),  
> so after the VM lets the UI handling routines run and what ever  
> else, he puts back the last running process?

Only if there is a single process at that priority. It's as if the  
process had called #yield voluntarily - the next runnable process of  
the same priority will be resumed once all higher-priority processes  
stopped.

At all times, the highest-priority runnable process will be executed.  
There always is a runnable process - if nothing else, it's the "idle  
process", which just gives up some processing time to the operating  
system (if there is one).


- Bert -





More information about the Squeak-dev mailing list