[技术问题解答] 关于_klog_get_task_stack_usage(...)

[复制链接]
1958|4
 楼主| MCF54418 发表于 2014-5-22 09:20 | 显示全部楼层 |阅读模式
我在任务中调用_klog_get_task_stack_usage(),但返回值错误。
task id是没有问题的,MQX_MONITOR_STACK也默认为1,
为什么返回错误??困惑中……
FSL_TICS_A 发表于 2014-5-22 16:09 | 显示全部楼层
你好,楼主!
我会将你问题转告给I.mx工程师,他稍后会回复你。
请耐心等待。
FSL_TICS_DANIEL 发表于 2014-5-23 08:47 | 显示全部楼层
楼主可以查看下, 返回什么值? MQX_INVALID_TASK_ID ? 还是 MQX_INVALID_CONFIGURATION?
 楼主| MCF54418 发表于 2014-5-26 17:37 | 显示全部楼层
FSL_TICS_DANIEL 发表于 2014-5-23 08:47
楼主可以查看下, 返回什么值? MQX_INVALID_TASK_ID ? 还是 MQX_INVALID_CONFIGURATION?

我在main函数里,加入该函数的调用,返回值为18
//**************************************************
uint_32 tSize = 0;
uint_32 uSize = 0;
uint_32 u32Ret = _klog_get_task_stack_usage(MAIN_TASK, &tSize, &uSize);
//**************************************************

其中,MAIN_TASK是主函数的任务ID。
 楼主| MCF54418 发表于 2014-5-26 18:11 | 显示全部楼层
MCF54418 发表于 2014-5-26 17:37
我在main函数里,加入该函数的调用,返回值为18
//**************************************************
...

我找到原因了,如果将程序改为如下:
//**************************************************
uint_32 tSize = 0;
uint_32 uSize = 0;
uint_32 u32Ret = _klog_get_task_stack_usage(_task_get_id(), &tSize, &uSize);
//**************************************************
则返回值为0,tSize和uSize都获取成功了。

总结下:
1、看来,任务模板列表创建的“任务索引”和系统生成的“任务ID”是不同的概念。
那么,两者有什么具体区别和联系呢?
您需要登录后才可以回帖 登录 | 注册

本版积分规则

12

主题

29

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部