- Fix bug in scheduler not erasing the running thread from the ready queue,

if it blocked because it immediately raised new unallocable (sub)requests. This
made the value of "alive_threads" wrong.


git-svn-id: svn://svn.gna.org/svn/sgpemv2/trunk@1244 3ecf2c5c-341e-0410-92b4-d18e462d057c
This commit is contained in:
tchernobog 2006-09-17 18:26:48 +00:00
parent 3fd03341ae
commit 83c648ffe9
1 changed files with 1 additions and 0 deletions

View File

@ -597,6 +597,7 @@ Scheduler::step_forward(History& history, CPUPolicy& cpu_policy, ResourcePolicy&
else else
{ {
running_thread->set_last_release(current_instant); running_thread->set_last_release(current_instant);
_ready_queue->erase_first();
running_thread = NULL; running_thread = NULL;
alive_threads--; alive_threads--;
// Proceed to select a new running thread, below // Proceed to select a new running thread, below