📄 killjob.cpp~
字号:
#ifndef KILL_JOB#define KILL_JOB#include "gettask.cpp"#include "movetime.cpp"void ttKillJob(char *taskName) { Task* task = getTask(taskName); TaskNode* tn; JobNode* jn; if (task == NULL) { char buf[200]; sprintf(buf, "ttKillJob: Non-existent task '%s'!", taskName); MEX_ERROR(buf); return; } if (task->currentJob == NULL) { char buf[200]; sprintf(buf, "ttKillJob: No job to kill for task '%s'!", taskName); MEX_ERROR(buf); return; } if (task == rtsys->executing) { char buf[200]; sprintf(buf,"ttKillJob: Can not kill currently executing job for task '%s'!", taskName); MEX_ERROR(buf); return; } // remove task from readyQ tn = (TaskNode*) rtsys->readyQ->getLast(); while (tn != NULL) { if (tn->getTask() == task) { rtsys->readyQ->deleteNode(tn); break; } tn = (TaskNode*) tn->getPrev(); } delete task->currentJob; // Execute finished-hook task->finished_hook(task); jn = (JobNode*) task->jobQ->getLast(); if (jn == NULL) { task->currentJob = NULL; } else { task->currentJob = jn->getJob(); task->jobQ->deleteNode(jn); moveToTimeQ(task); }}#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -