⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 overruntimers.cpp

📁 一个很棒的网络控制系统仿真软件
💻 CPP
字号:
#ifndef OR_TIMERS#define OR_TIMERSvoid createDLTimer(Task *task, double time) {  Timer *t = new Timer;  t->name = NULL;  t->time = time;  t->period = 0.0;  t->isPeriodic = false;  t->wcetORtimer = false;  t->dlORtimer = true;  t->handler = task->deadlineORhandler;  t->task = task;  rtsys->timerQ->insertSorted(new TimerNode(t));}  void createWCETTimer(Task *task, double time) {  Timer *t = new Timer;  t->name = NULL;  t->time = time;  t->period = 0.0;  t->isPeriodic = false;  t->wcetORtimer = true;  t->dlORtimer = false;  t->handler = task->exectimeORhandler;  t->task = task;  rtsys->timerQ->insertSorted(new TimerNode(t));}  void removeWCETTimer(Task* task) {  bool found = false;  TimerNode* tn = (TimerNode*) rtsys->timerQ->getFirst();  while (tn!=NULL && !found) {    Timer* t = tn->getTimer();    if (t->wcetORtimer && (t->task == task)) {      found = true;      rtsys->timerQ->deleteNode(tn);      delete t;    } else {      tn = (TimerNode*) tn->getNext();    }  }}void removeORTimers(Task *task) {  bool found1 = false;  bool found2 = false;  TimerNode* tn = (TimerNode*) rtsys->timerQ->getFirst();  while (tn!=NULL && !(found1 && found2)) {    Timer* t = tn->getTimer();    if (t->dlORtimer && t->task == task) {      found1 = true;      TimerNode* tmp = tn;      tn = (TimerNode*) tn->getNext();      rtsys->timerQ->deleteNode(tmp);      delete t;    }    else if (t->wcetORtimer && t->task == task) {      found2 = true;      TimerNode* tmp = tn;      tn = (TimerNode*) tn->getNext();      rtsys->timerQ->deleteNode(tmp);    }    else      tn = (TimerNode*) tn->getNext();  }}#endif

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -