view TaskManager/kernel/schedule/SchedNop2Ready.cc @ 366:0251d06467de draft

rename include/TaskManager/* and add memory
author aaa
date Mon, 27 Jul 2009 15:51:18 +0900
parents 768452fab95e
children e2f29e912d0b
line wrap: on
line source

#include <stdio.h>
#include "SchedNop2Ready.h"
#include "SchedTaskList.h"
#include "SchedMail.h"
#include "error.h"

SchedNop2Ready::SchedNop2Ready(Scheduler *cn)
{
    scheduler = cn;
}

void
SchedNop2Ready::exec(void)
{
    __debug("[SchedNop2Ready:%s]\n", __FUNCTION__);

    //scheduler->mail_write(MY_SPE_STATUS_READY);
}

SchedTaskBase*
SchedNop2Ready::next(Scheduler *m, SchedTaskBase *p)
{
    SchedTaskBase *nextSched;

    __debug("[SchedNop2Ready:%s]\n", __FUNCTION__);
    
    delete p;

    nextSched = scheduler->get_nextRenewTaskList();
	
    // RenewTask がある
    if (nextSched) {
	return nextSched;
    } else {
	scheduler->mail_write(MY_SPE_STATUS_READY);
	return new SchedMail(scheduler);
    }
}