On Mon, Mar 25, 2024 at 9:11 PM Chris Muller <ma.chris.m@gmail.com> wrote:

With processPremption set false, since those operations don't have explicit #yields, all of your same-level Processes are sitting ducks waiting for the front one to, for example, #waitForSendDone to finish over its 300 baud connection. 

That does not sound right.  In particular, #waitForSendDone: waits on a semaphore, which resumes the next runnable process at the same priority. It would only be true if some process was busy-waiting without a semaphore or yielding. That would obviously prevent other processes from running, but I'm reasonably sure we got rid of those busy loops. Those were common back in the days of MVC, but even Morphic's main loop (a.k.a. the UI Process) yields.

Didn't Dave say it was RFB causing the issues? Maybe that one has a busy-loop.

Vanessa