[Pharo-project] [COTDC] 18 - SMxMorphicAlarm
henrik.s.johansen at veloxit.no
Fri Feb 25 06:08:47 EST 2011
On Feb 24, 2011, at 8:49 46PM, laurent laffont wrote:
> Finally a funny class ;)
> I rephrase a little:
> I represent a message sent to be scheduled by the SMxWorldState. I'm the exact duplicate of MorphicAlarm in the Simple Morphic world (see MorphicAlarm comment).
> And in MorphicAlarm:
> I represent a message to be scheduled by the WorldState.
> For example, you can see me in action with the following example which print 'alarm test' on Transcript one second after evaluating the code:
> Transcript open.
> MorphicUIManager currentWorld
> addAlarm: #show:
> withArguments: #('alarm test')
> for: Transcript
> at: (Time millisecondClockValue + 1000).
> I haven't been able to test the previous code in SimpleMorphic, there's a MNU when trying to write in the Workspace.
For those wondering "why not just use normal delays and threading system?", you might want to add:
"Compared to doing:
[(Delay forMilliseconds: 1000) wait. Transcript show: 'alarm test'] forkAt: Processor activeProcess priority +1.
the alarm system has 2 distinctions:
- Runs with the step refresh rate resolution.
- Alarms only run for the active world. (Unless a non-standard scheduler is in use)
- Alarms with the same scheduled time are guaranteed to be executed in the order they were added"
At least that's what I could reckon.
More information about the Pharo-dev