[squeak-dev] The Inbox: Morphic-jar.2018.mcz
commits at source.squeak.org
commits at source.squeak.org
Wed Jul 6 08:20:01 UTC 2022
A new version of Morphic was added to project The Inbox:
http://source.squeak.org/inbox/Morphic-jar.2018.mcz
==================== Summary ====================
Name: Morphic-jar.2018
Author: jar
Time: 6 July 2022, 10:19:54.175389 am
UUID: 78dd80d9-1174-0c40-ad18-6f76e13e744b
Ancestors: Morphic-mt.2017
Add an "exit condition" to the UI loop to allow a former UI process to finish its last cycle and terminate gracefully. It allows to create a new UI without the need to explicitely terminate the old one because a UI process will terminate automatically once it's replaced by a new one. This change could allow UI proceses blocked on custom semaphores to continue waiting for a signal and finish their previous job (and terminate). Also, it prevents two UI processes to exist at the same time; only the one registered in the 'uiProcess' variable is allowed to cycle.
Please review for any potential drawbacks or conflicts I may have missed.
=============== Diff against Morphic-mt.2017 ===============
Item was changed:
----- Method: MorphicProject>>spawnNewProcess (in category 'active process') -----
spawnNewProcess
uiProcess := [
+ [world doOneCycle. Processor yield. uiProcess isActiveProcess] whileTrue.
- [world doOneCycle. Processor yield ] repeat.
] newProcess priority: Processor userSchedulingPriority.
uiProcess resume!
More information about the Squeak-dev
mailing list
|