On Wed, Nov 10, 2010 at 14:47, Holger Hans Peter Freyther <[email protected]> wrote: > On 11/10/2010 10:54 AM, Paolo Bonzini wrote: >> On 11/10/2010 10:49 AM, Holger Hans Peter Freyther wrote: >>> thanks, I will need to read it a couple of more times until I figure out >>> what >>> I need to do.:) >> >> Nothing? :) > > What about the VM change for a cleanup? That is just to wait for multiple > things to happen?
That would be quite huge. Everything else is already pushed. >> (Delay forSeconds: 1) timedWaitOn: sema >> >> will wait on a semaphore for 1 second, and return true if the timeout >> occurred, false if the semaphore was grabbed. > > nextTimed: timeout [ > "Wait for an object up to timeout seconds" > <category: 'accessing'> > | delay expired result | > > delay := Delay forSeconds: timeout. > expired := delay timedWaitOn: valueReady. > > expired ifTrue: [ > "Raise some kind of exception" > ] > > queueSem critical: [result := queue removeFirst]. > ^result > ] > > > so something like the above for SharedQueue would be acceptable upstream? Sure. Just make sure that: 1) the exception is not resumable; 2) if there's anything like that in Squeak, it's compatible. Paolo _______________________________________________ help-smalltalk mailing list [email protected] http://lists.gnu.org/mailman/listinfo/help-smalltalk
