Transcript may lose some output for #processPreemptionYields = true
Example (semaphore prearmed with 2 signals):
|accessProtect| Smalltalk vm processPreemptionYields: true. Transcript cr. accessProtect := Semaphore new signal signal. [accessProtect critical: [ Transcript cr; show: 'Process 1a '. 10000 factorial. Transcript cr; show: 'Process 1b '. ]] fork. Processor yield. [accessProtect critical: [ Transcript cr; show: 'Process 2a '. 10000 factorial. Transcript cr; show: 'Process 2b '. ]] forkAt: 41. Transcript cr; show: 'Process UIa '. 0.3 second wait. Transcript cr; show: 'Process UIb '.
Output: "this is ok" Process 1a Process 2a Process 2b Process 1b Process UIa Process UIb
"Here Process 2a output missing!" Process 1a Process 2b Process UIa Process 1b Process UIb
"Or even this came out" Process 1a Process 2b Process 1b Process UIb
The problem is probably related to the post: Transcript error when forceUpdate: false http://forum.world.st/Transcript-error-when-forceUpdate-false-td5126397.html
Similar workaround (Collections-mt.923 @ inbox) may fix this issue too. Tested on Squeak6.0alpha-20182-64bit-freshCopy (Collections-dtl.923 @ trunk)
-- Sent from: http://forum.world.st/Squeak-Dev-f45488.html