2011/1/11 Levente Uzonyi <[email protected]> > > On Tue, 11 Jan 2011, Eliot Miranda wrote: > > (Pine can't quote your mail, sorry.) > > "The problem with linux is that the pthreads implementation doesn't allow a > normal user-level process to create high-priroity threads so that as > soon as the Vm starts to spin doing some computation the heartbeat thread > is shut-out and if the spinning computation only interrupted when a delay > expires it'll never get interrupted because it is blocking the very thread > that would signal the delay. So until linux's pthreads implementation > supports multiple priorities we're stuck with hacks like the interval timer > based itimer in the linux Cog VMs." > > What about keeping the priority of the heartbeat thread at user-level and > decreasing the other VM threads' priority slighly? >
Linux doesn't allow more than /one/ thread priority for threads in a user-level process. So one /can't/ have multiple priorities. All threads run at the same priority. This is a horrible bug in the linux pthreads implementation but there it is. best Eliot > > > Levente >
