我使用taskVarAdd()API将一个全局结构添加到我的任务中。
但在某些情况下,使用taskVarAdd()API将相同的全局结构再次添加到同一任务中。 [即,从同一变量的任务中调用taskVarAdd()两次]。
此结构将维护该任务的taskID,消息队列ID。
答案 0 :(得分:0)
最简单的方法是做一个简单的测试用例。
int v1;
void tvl()
{
v1 = 1;
taskVarAdd(0, &v1);
v1 = 2;
taskVarAdd(0, &v1);
v1 = 3;
taskDelay(1);
printf("Initial v1 = %d\n", v1);
for(;;)
{
v1++;
taskDelay(60);
printf("v1 = %d\n", v1);
}
}
运行测试代码会产生v1的以下值:
Initial v1 = 2
1 3 3 2 4 4 3 5 5 4...
具有单个taskVarAdd的相同代码给出预期结果1 2 3 4 ...
PS:您没有指定VxWorks的版本,所以我所说的对Vxworks 6.x有效