Transcript problems!

jchludzinski at worldkey.net jchludzinski at worldkey.net
Fri Dec 1 08:58:16 UTC 2000


To avoid having multiple Processes concurrently writing (#show:) to 
the Transcript, I have an class (#StringPump) with an instance of 
SharedQueue on which the Processes place Strings (using #nextPut:).  
A separate Process (part of #StringPump) retrieves the Strings 
(using #next) and writes the String to the Transcript:

run
   | nextValue |
   [true]
      whileTrue: 
         [nextValue _ self sharedQ next.
         Transcript cr; show: nextValue]

This resulted in an error with the following call stack:

MessageNotUnderstood: stringIndex
UndefinedObject(Object)>>doesNotUnderstand:
TextMorphEditor(ParagraphEditor)>>selectionInterval
PluggableTextMorph>>scrollSelectionIntoView:
PluggableTextMorph>>scrollSelectionIntoView
PluggableTextMorph>>handleEdit:
PluggableTextMorph>>update:
[] in TranscriptStream(Object)>>changed:
Array(SequenceableCollection)>>do:
TranscriptStream(Object)>>changed:
TranscriptStream>>endEntry
TranscriptStream>>show:
StringPump>>run
[] in StringPump class>>new:
[] in BlockContext>>newProcess


Any suggestions on how I can have multiple threads write to the 
Transcript (concurrently) - without problems?  I have also seen 
another error concerning indices and #endEntry.

---John







More information about the Squeak-dev mailing list