Probably most people don't look much at Tools > Process Browser.  I never
did until I doing the delay refactoring to keep track of when the timer
event loop was running.

I often find several of the following processes stuck on a semaphore...
    [ sem notNil
ifTrue: [
sem wait.
view ifNotNil: [ view stylerStyledInBackground: text ] ] ] forkAt:
Processor activePriority.

So I had a little dig.  Now trying to fix this multithreaded code at this
late stage has some risk of destabilising things, so I propose the
following minimal effective change...

    [ sem notNil
ifTrue: [
(sem waitTimeoutSeconds: 5) ifFalse: [
view ifNotNil: [ view stylerStyledInBackground: text ] ] ] ] forkAt:
Processor activePriority.

Can anyone more familiar with SHTextStyler than the half hour I've had
comment if they foresee any problem with that?

cheers -ben

Reply via email to