First of all. JDK 1.2pre for Linux is great. Congratulation and thanx to the people
who brought it together.
Q:
1.) (JDK 1.2) Setting different priorities does not seem to have an effect on thread
scheduling (a thread with priority reduced to
mininum will continue to get scheduled as frequently as higher priority threads) --
even when using native threads (unlike on
Windows NT or Solaris). Why? As far as know, native threads under linux use cloned
processes. If this is true, the JVM could set
the priority of the op. sys. processes accordingly to what is requested in the Java
byte code being interpreted. Would not is
solve this deficiency of the Linux impl.?
2.) (JDK 1.1.7) Green threads do not seem to yield execution to other threads until
explicitely asked (yield()), or getting
blocked on IO or sleep(). If green threads are user threads in the same process, how
did you achieved the mentionned behavior? (To
my knowledge, when you call sleep() or block on IO, the whole process will get blocked
with all the user threads.)
3.) (Slightly OT) Earlier in this group, thread issues has been discussed and someone
mentionned that the JVM spec does not even
require that the JVM schedule another thread when the current thread calls yield().
Not requiring to provide a reasonable
(automatic) scheduling policy (each thread gets scheduled to execute according to its
priority on a best effort basis) is, in my
opinion, bad enough. Do not you think that, on top of this, not being able to rely on
the JVM providing the minimal facility to
control thread scheduling from the application through calling yield() makes threads
useless? (...if you want to write portable
code, which I think is one of the raisons d'etre of JAVA.)
Thank you for your help.
Peter
----------------------------------------------------------------------
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]