Path: sran265!katsu From: katsu@sra.co.jp (WATANABE Katsuhiro) Message-ID: Date: 11 Nov 93 15:58:01 Organization: Software Research Associates, Inc.,Japan In-reply-to: v9110104@vub.ac.be's message of 3 Nov 93 18:00:01 GMT Newsgroups: comp.lang.smalltalk Followup-To: comp.lang.smalltalk Subject: Re: Smalltalk and concurr Distribution: References: <7.2153.273.0N557E00@cld9.com> In article v9110104@vub.ac.be (Johan Ovlinger) writes: > In article , yan@sybase.com (Xudong Yan) wrote: > > > > [ about having one "high priority" process with Delay and two other process > > to be preemptive multi tasked ] > > This works fine, try it. > The effect of this is that the two( or more for that matter) lower > priority processes are scheduled in a round robin manner, each getting > to run for a delay period before being preempted by HighPriority process. In my observation, ST/V behaves as above but OW\ST does not. (I used VMac V2.0 and OW\ST R4.1 on MacIIfx.) What I tried was the following: | x y | [[true] whileTrue: [ (Delay forSeconds: 5) wait. Transcript show: 'x=', x printString, 'y=', y printString; cr]] forkAt: Processor userInterruptPriority. [[true] whileTrue: [x := x + 1]] fork. [[true] whileTrue: [y := y + 1]] fork. On my machines, both x and y incleases alternately in ST/V, while only x incleases in OW\ST. I hope someone here explain the reason. -- WATANABE Katsuhiro Software Research Associates, Inc. (Tokyo JAPAN)