[squeak-dev] The Inbox: Compiler-mt.456.mcz

jaromir m at jaromir.net
Tue Feb 2 13:14:03 UTC 2021


> However, I have no idea why the following happens:
>
> x := 0.
> [ [ x := 1 ] forkAt: 41 ] valueUnpreemptively.
> y := x == 1. "false :-("
>
>
> Or this:
>
> x := 0.
> [ [ x := 1 ] forkAt: 41 ] valueUnpreemptively.
> Transcript showln: 'foo'.
> y := x == 1. "false :-("

The reason is the #yield primitive 167 - it doesn't reflect the change of
priority as done in #valueUnpreemptively... Try to remove the primitive from
#yield and then it works ok
Regards,
Jaromir



--
Sent from: http://forum.world.st/Squeak-Dev-f45488.html


More information about the Squeak-dev mailing list