"stepping" a non-morphic object
I have a model which needs to run at regular intervals, and it could have a number of UI connections. So it's not "intrinsically" a morph. What is the best way to get the step message sent to non-morphs - or is there a better way in Pharo (Google was not my friend!) thanks in advance for any help Chris
re : Google'd heartbeat and model ticking-over isn't there a stackoverflow.com option for #pharo in addition to this mail list ( when time interval very short ;-) ? I think Seaside suggests just using #pharo tag to raise someone ... or was that IRC freenode ? Even with Pharo3 sooo close to release, those EU folks must sleep sometimes ;-) On 29 April 2014 09:06, Chris Wright <cawright.99@gmail.com> wrote:
I have a model which needs to run at regular intervals, and it could have a number of UI connections. So it's not "intrinsically" a morph.
What is the best way to get the step message sent to non-morphs - or is there a better way in Pharo
(Google was not my friend!)
thanks in advance for any help
Chris
On 29 Apr 2014, at 14:22, Robert Shiplett <grshiplett@gmail.com> wrote:
re : Google'd heartbeat and model ticking-over
isn't there a stackoverflow.com option for #pharo in addition to this mail list ( when time interval very short ;-) ? I think Seaside suggests just using #pharo tag to raise someone ... or was that IRC freenode ?
Chris Wright wrote
What is the best way to get the step message sent to non-morphs - or is there a better way in Pharo
I'm not sure I understand exactly, but if you want to do it via Morphic stepping, you could implement e.g. ModelTickingMorph which is invisible and has no extent, and steps your model in it's #step. or you could use a process: [ [ myModelObject step. 1 second asDelay wait ] repeat ] fork. ----- Cheers, Sean -- View this message in context: http://forum.world.st/stepping-a-non-morphic-object-tp4756998p4757081.html Sent from the Pharo Smalltalk Users mailing list archive at Nabble.com.
On 29 April 2014 18:41, Sean P. DeNigris <sean@clipperadams.com> wrote:
Chris Wright wrote
What is the best way to get the step message sent to non-morphs - or is there a better way in Pharo
I'm not sure I understand exactly, but if you want to do it via Morphic stepping, you could implement e.g. ModelTickingMorph which is invisible and has no extent, and steps your model in it's #step.
or you could use a process: [ [ myModelObject step. 1 second asDelay wait ] repeat ] fork.
except that you then will be also responsible for managing forked process by implementing it.. else it will loop forever, your object will never be GCed, consume CPU & waste memory :) oh.. and each time you test it once more, it will readily spawn another process with same characteristics :)
----- Cheers, Sean -- View this message in context: http://forum.world.st/stepping-a-non-morphic-object-tp4756998p4757081.html Sent from the Pharo Smalltalk Users mailing list archive at Nabble.com.
-- Best regards, Igor Stasenko.
Igor Stasenko wrote
except that you then will be also responsible for managing forked process
Yes, I left that out for simplicity, but I recall painfully how complex it can be to make sure everything gets GC-ed (http://forum.world.st/Terminating-a-Process-when-an-object-dies-td4683036.ht...) ----- Cheers, Sean -- View this message in context: http://forum.world.st/stepping-a-non-morphic-object-tp4756998p4757152.html Sent from the Pharo Smalltalk Users mailing list archive at Nabble.com.
There is the Scheduler project on smalltalkhub. Norbert
Am 30.04.2014 um 05:30 schrieb Ben Coman <btc@openInWorld.com>:
Igor Stasenko wrote:
On 29 April 2014 18:41, Sean P. DeNigris <sean@clipperadams.com> wrote: Chris Wright wrote
What is the best way to get the step message sent to non-morphs - or is there a better way in Pharo
I'm not sure I understand exactly, but if you want to do it via Morphic stepping, you could implement e.g. ModelTickingMorph which is invisible and has no extent, and steps your model in it's #step.
or you could use a process: [ [ myModelObject step. 1 second asDelay wait ] repeat ] fork. except that you then will be also responsible for managing forked process by implementing it.. else it will loop forever, your object will never be GCed, consume CPU & waste memory :) oh.. and each time you test it once more, it will readily spawn another process with same characteristics :)
Maybe there should be a SystemStepper / Cron object that can be registered on. cheers -ben
it works fine, Iâm using it for some projects. and is also in configurations browser :) Esteban On 30 Apr 2014, at 09:50, Norbert Hartl <norbert@hartl.name> wrote:
There is the Scheduler project on smalltalkhub.
Norbert
Am 30.04.2014 um 05:30 schrieb Ben Coman <btc@openInWorld.com>:
Igor Stasenko wrote:
On 29 April 2014 18:41, Sean P. DeNigris <sean@clipperadams.com> wrote: Chris Wright wrote
What is the best way to get the step message sent to non-morphs - or is there a better way in Pharo
I'm not sure I understand exactly, but if you want to do it via Morphic stepping, you could implement e.g. ModelTickingMorph which is invisible and has no extent, and steps your model in it's #step.
or you could use a process: [ [ myModelObject step. 1 second asDelay wait ] repeat ] fork.
except that you then will be also responsible for managing forked process by implementing it.. else it will loop forever, your object will never be GCed, consume CPU & waste memory :) oh.. and each time you test it once more, it will readily spawn another process with same characteristics :)
Maybe there should be a SystemStepper / Cron object that can be registered on. cheers -ben
EstebanLM wrote
it works fine, Iâm using it for some projects.
+1 ----- Cheers, Sean -- View this message in context: http://forum.world.st/stepping-a-non-morphic-object-tp4756998p4757194.html Sent from the Pharo Smalltalk Users mailing list archive at Nabble.com.
participants (8)
-
Ben Coman -
Chris Wright -
Esteban Lorenzano -
Igor Stasenko -
Marcus Denker -
Norbert Hartl -
Robert Shiplett -
Sean P. DeNigris