Thank you for your interesting article. I wonder about you do not mention the possibility of process priorisation on operating system level. In my opinion this should be more effective and easier to use. But I did not test it.
Can you explain the advantage of your class and why you decided not to use the operating systems scheduling priority functionality?
Manuel Lemos - 2010-10-27 07:53:23 - In reply to message 1 from Eike
Eike, OS processes priorities have a different purpose.
Processes with higher priority get the CPU first but it does not prevent processes with lower priority to also get the CPU for instance when the high priority processes perform I/O operations (access files, network, etc..) and have to be put to sleep until I/O operations finish.
In practice lower priority processes still slow down the system unless thety are put to sleep for a good while. That is what my method does. If the system average CPU load is high, background processes that my code controls are put to sleep until the average load returns to acceptable levels.