[BUG][Linux] VM2.8 port eats processor cycles
Tim Rowledge
tim at sumeru.stanford.edu
Wed Jun 28 23:26:26 UTC 2000
In message <395A8532.6272A67E at evolgo.de> you wrote:
> There is a bug somewhere. Possibly I have found the origin, see below.
[snip]
> There is a socketPollFunction, which has to be set by
> setSocketPollFunction( int spf), because it is initialized to 0;
> grep'ing for setSocketPollFunction() reveals:
>
> sr at Klaus:~/Squeak/2.8/src > grep setSocketPollFunction *.c *.h
> ../interp.c
> sqXWindow.c:void setSocketPollFunction( int spf) {
>
> . It won't be called! So ioRelinquishProcessorForMicroseconds() returns
> *very* fast and the idle process doesn't give processor cycles to the
> OS.
Well, sorta.
The setSocketPollFunction is called by the socket plugin (remember, you
have to grep _all_ the sources) in its initialiseModule() code. So if
you haven't done a socket call, then yes I guess you never go to sleep.
Hmm, anyone know how to handle something like this? Is there a sleep
type of call that will do partial seconds? Seems kind of poor to require
people to do a socket call in order to sleep!
tim
--
Tim Rowledge, tim at sumeru.stanford.edu, http://sumeru.stanford.edu/tim
Useful Latin Phrases:- Ventis secundis, tene cursum. = Go with the flow.
More information about the Squeak-dev
mailing list
|