通业开发人论坛

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 410|回复: 0

死循环导致线程栈溢出

[复制链接]
发表于 2015-6-5 11:25:45 | 显示全部楼层 |阅读模式
线程溢出
finsh>>thread:logic stack overflow
thread  pri  status      sp     stack size max used   left tick  error
-------- ---- ------- ---------- ---------- ---------- ---------- ---
console  0x0f suspend 0x00000084 0x00000400 0x00000084 0x00000001 000
pm_tx    0x08 suspend 0x00000084 0x00000400 0x00000094 0x00000005 000
inv_tx    0x08 suspend 0x00000084 0x00000400 0x00000084 0x00000002 000
inv_rx    0x08 suspend 0x00000054 0x00000400 0x00000128 0x00000001 000
tidle      0x1f ready   0x00000044 0x00000400 0x00000060 0x00000001 000
tshell     0x14 suspend 0x00000094 0x00000800 0x00000094 0x0000000a 000
logic      0x09 ready   0x0000055c 0x00000400 0x00000400 0x00000003 000
flash     0x14 suspend 0x00000084 0x00000800 0x0000015c 0x00000005 000
relay    0x02 suspend 0x00000084 0x00000400 0x00000084 0x00000005 000
ad       0x01 suspend 0x0000010c 0x00000400 0x0000010c 0x00000005 000

导致错误的地方
void TDPS04::Off()
{
    if (isStartEnable)
    {
        pfc1.Off();
        pfc2.Off();
        this->Off();//此处为调用本函数,因此进入死循环.
    }
}

更改如下

void TDPS04::Off()
{
    if (isStartEnable)
    {
        pfc1.Off();
        pfc2.Off();
        Product::Off();//调用基类Off函数,执行关闭操作.
    }
}

回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|小黑屋|手机版|Archiver|TongYe R&D Inc.

GMT+8, 2024-5-14 05:58 , Processed in 0.124007 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2000-2022, Tongye. 粤ICP备17061194号

快速回复 返回顶部 返回列表