2009/3/29 Igor Stasenko <siguctua@gmail.com>:
2009/3/29 Stéphane Ducasse <stephane.ducasse@inria.fr>:
Hi all
I'm working on a threadSafeTranscript and I could not understand why the following code does not print something else than
    1*100-102-103-104-105-106-107-108-109-110-
|tt| tt := Transcript. [1 to: 10 do: [:i | tt show: i printString; show: '*'.                     Processor yield ].     tt flush     ]  fork. [100 to: 110 do: [:i | tt show: i printString; show: '-'.                     Processor yield  ].     tt flush     ] fork.
What you expecting from it? If you imagine that Processes running in parallel, then numbers can be in any order , as well as * and - characters. Or you mean, that it eating 2-10 numbers which should be printed? In this case, the source of inconsistency could be the #flush method. But its hard to say, without looking at source code.
oh, and if you running it in image, without Eliot's closures, i'd recommend to use separate iterator for cycles, because it might be the case that parser using the same temp slot for 'i' temp in both blocks.
Stef
_______________________________________________ Pharo-project mailing list Pharo-project@lists.gforge.inria.fr http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
-- Best regards, Igor Stasenko AKA sig.
-- Best regards, Igor Stasenko AKA sig.