Posted by
Sven Van Caekenberghe-2 on
Jun 02, 2017; 2:35pm
URL: https://forum.world.st/Morphic-or-forking-bug-tp4948727p4948994.html
Hi Horrido,
It is very hard to follow what you are exactly doing or trying to do.
Here is the simplest example I can think of that updates something in Morphic on a regular basis.
StringMorph subclass: #MyClock
instanceVariableNames: ''
classVariableNames: ''
package: '_UnpackagedPackage'
MyClock>>#initialize
super initialize.
self updateClock
MyClock>>#step
self updateClock
MyClock>>#updateClock
self contents: Time now printString
MyClock class>>#open
"self open"
^ self new openInWindow
This inherits #stepTime as 1 second. If I open such a window and save my image, it is still there when the image is restarted, with the clock still working.
Updating (data structures in) the main UI process from another process is dangerous. Saving such constructs is even more dangerous.
HTH,
Sven
> On 2 Jun 2017, at 15:54, horrido <
[hidden email]> wrote:
>
> Sorry, I could be mistaken. I just checked my notes. The *0 asString* test
> failed once, but I've not been able to replicate it. I might've been working
> with an unclean image.
>
> So perhaps it is related to Morphic, after all.
>
>
> horrido wrote
>> Yup, they all fail. Interesting that
> *
>> 0 asString
> *
>> fails. This means it has NOTHING to do with Morphic (or Morphic being
>> thread-unsafe).
>>
>> Ben Coman wrote
>>> On Wed, May 31, 2017 at 10:23 PM, horrido <
>
>>> horrido.hobbies@
>
>>> > wrote:
>>>
>>> Can you try a few other variations...
>>> [ [ true ] whileTrue: [ 0 asString. delay wait ] fork.
>>> [ [ true ] whileTrue: [ a contents: '0'. delay wait ] fork.
>>> [ [ true ] whileTrue: [ a contents: '0'. ] forkAt: 20.
>>>
>>> cheers -ben
>
>
>
>
>
> --
> View this message in context:
http://forum.world.st/Morphic-or-forking-bug-tp4948727p4948984.html> Sent from the Pharo Smalltalk Users mailing list archive at Nabble.com.