|
Task_Struct tasks[] =
{
{0,200,200,task1}, //用各个任务的函数名初始化
{0,60,60,task2},
{0,100,100,task3},
{0,10,10,task4}
};
比如在此任务数组中有4个任务,但是每个任务的时间片是不同的。200ms/60ms/100ms/10ms
所以能在4个不同时间片执行相应的任务。
我的问题是在同一个时间片如何处理不同任务?
比如定时60秒的时间片,60秒到要处理显示更新以及倒计时这两个任务该如何解决?
(1)Task_Struct tasks[] =
{
{0,60,60,task1},//任务一显示更新
{0,60,60,task2},//任务二倒计时
}
(2)Task_Struct tasks[] =
{
{0,60,60,task1}
}
void task1()
{
work1();//任务一显示更新
work2();//任务二倒计时
}
这两种方法行不行的通?或者有没更好的方法能够解决?
注:关于时间片轮解释如下
https://blog.csdn.net/HQ1356466973/article/details/53639209
|
|