task.h
来自「《C++嵌入系统编程》实例源代码,对做嵌入式开发有一定的参考作用」· C头文件 代码 · 共 60 行
H
60 行
/**********************************************************************
*
* Filename: task.h
*
* Description: Header file for the Task class.
*
* Notes:
*
*
* Copyright (c) 1998 by Michael Barr. This software is placed into
* the public domain and may be used for any purpose. However, this
* notice must not be changed or removed and no warranty is either
* expressed or implied by its publication or distribution.
**********************************************************************/
#ifndef _TASK_H
#define _TASK_H
typedef unsigned char TaskId;
typedef unsigned char Priority;
enum TaskState { Ready, Running, Waiting };
class Task
{
public:
Task(void (*function)(), Priority, int stackSize);
TaskId id;
Priority priority;
TaskState state;
Context context;
int * pStack;
Task * pNext;
void (*entryPoint)();
private:
static TaskId nextId;
};
class TaskList
{
public:
TaskList();
void insert(Task * pTask);
Task * remove(Task * pTask);
Task * pTop;
};
#endif /* _TASK_H */
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?