高级会员

- 积分
- 650
- 金钱
- 650
- 注册时间
- 2013-10-23
- 在线时间
- 48 小时
|
10金钱
代码如下:
void task_stkdec(void *p_arg)
{
OS_ERR err;
CPU_TS ts;
CPU_STK_SIZE used,free;
p_arg=p_arg;
while(1)
{
OSTimeDly(1000,OS_OPT_TIME_DLY,&err);
OSTaskStkChk(&OSStatTaskTCB,&free,&used,&err);
printf("统计任务: %d%%\n",100*used/(used+free));
OSTimeDly(30,OS_OPT_TIME_DLY,&err);
printf("CPU使用率:%d%%\n",OSStatTaskCPUUsage);
}
}
输出统计任务的堆栈使用率和CPU使用率,结果输出结果如下:
CPU使用率:62%
统计任务: 49%
CPU使用率:293%
统计任务: 49%
CPU使用率:62%
统计任务: 49%
CPU使用率:62%
统计任务: 49%
CPU使用率:292%
统计任务: 49%
CPU使用率:62%
统计任务: 49%
CPU使用率:62%
统计任务: 49%
CPU使用率:291%
统计任务: 49%
CPU使用率:62%
统计任务: 49%
CPU使用率:62%
统计任务: 49%
CPU使用率:291%
统计任务: 49%
CPU使用率:63%
统计任务: 49%
CPU使用率:63%
CPU使用率显示会出错,请问是哪里出了问题呢
|
|