перенос кода Planner

This commit is contained in:
2023-12-03 19:43:41 +03:00
parent b1e51ce599
commit 91331ae441
14 changed files with 980 additions and 776 deletions

View File

@@ -1,25 +1,28 @@
#pragma once
#include "CompilationSupervisor.h"
#include "RunTask.h"
#pragma once
class RunSupervisor: public Supervisor<RunTask> {
public:
RunSupervisor(CompilationSupervisor * compilationSupervisor){
this->init("runTasks", 8);
class RunSupervisor : public Supervisor<RunTask> {
public:
RunSupervisor(CompilationSupervisor* compilationSupervisor) {
this->init("runTasks", 8);
//проверить отмененные задачи.
for (long i=0; i< this->length; ++i){
RunTask * task = this->get(i);
CompilationTask * parent = compilationSupervisor->getTaskById( task->getTestCompilationTaskId());
task->setState((parent->getState()==Done)?Waiting:Canceled);
task->setParent(parent);
for (long i = 0; i < getLength(); ++i) {
RunTask* task = this->get(i);
CompilationTask* parent = compilationSupervisor->getTaskById(task->getTestCompilationTaskId());
task->setState((parent->getState() == Done) ? Waiting : Canceled);
task->setParent(parent);
printf("id=%ld; parent_id = %ld; state=%s\n",
task->getId(),
task->getParent()->getId(),
task->printState().getCharArray());
}
task->getId(),
task->getParent()->getId(),
task->printState().getCharArray());
}
}
virtual String getStatePrefix(){
virtual String getStatePrefix() {
return String("Running");
}
/*
virtual void Finalize(){
this->state = Archivation;
@@ -29,4 +32,4 @@ public:
printf("Archivation ended\n");
}
*/
};
};