On Mon, 5 Nov 2018 at 20:02, Stephan Eggermont <[email protected]> wrote:
> Ben Coman <[email protected]> wrote: > > On Fri, 13 Apr 2018 at 13:56, Benoit St-Jean via Pharo-users < > > [email protected]> wrote: > > > > What is the current status of this? DelaySpinScheduler is default in my > recent Pharo 7 images and makes my images unusable on Ubuntu 18.04LTS. > The refactoring was enabled a month ago. DelaySemaphoreScheduler in the refactored hierarchy was made default so that DelaySpinScheduler could remain in place in the old hierarchy . https://github.com/pharo-project/pharo/blame/development/src/Kernel/Delay.class.st#L90 On discord you mention that DelaySpinScheduler was the default in build 1358. But with PharoLauncher I just downloaded "Pharo-7.0.0-alpha.build.1358.sha.f9325e7.arch.32bit" and for me it shows DelaySemaphoreScheduler is the default. Evaluating ```Delay delaySchedulerClass``` ==> "DelaySemaphoreScheduler" and the process browser shows... [image: DelayScheduler-build-71358.png] So I'm curious how DelaySpinScheduler became enabled for you? cheers -ben P.S. a case was found where a process running at highestPriority (the same as the delay scheduling loop) that called Delay>>schedule: twice would lock DelaySpinScheduler - since the delay scheduling loop would not get an opportunity to process & clear the transfer-variable "delayToStart". I'd always worked with the assumption that the delay scheduling loop was the only process running at highest priority. DelaySemaphoreScheduler works fine with multiple highestPriority processes, so it will be the default going forward.
