zoukankan      html  css  js  c++  java
  • WinCE 系统刚启动时运行应用,在应用启动时偶尔出现异常

    以下是出错时,串口输出的 LOG:

    ......
    Exception 'Data Abort' (0x4): Thread-Id=05fe00b2(pth=c0869000), Proc-Id=053f00be(pprc=c087ba2c) 'MyTest.exe', VM-active=053f00be(pprc=c087ba2c) 'MyTest.exe'
    PC=4007a930(coredll.dll+0x0006a930) RA=4007a794(coredll.dll+0x0006a794) SP=00054828, BVA=00001003
    Exception 'Data Abort' (0x4): Thread-Id=05fe00b2(pth=c0869000), Proc-Id=053f00be(pprc=c087ba2c) 'MyTest.exe', VM-active=053f00be(pprc=c087ba2c) 'MyTest.exe'
    PC=4007a930(coredll.dll+0x0006a930) RA=4007a794(core
    lw.illo0t0o06r7(4  SW=I0E54EeS,OBVE=E0T01
    03
    Exception 'Data Abort' (0x4): Thread-Id=05fe00b2(pth=c0869000), Proc-Id=053f00be(pprc=c087ba2c) 'MyTest.exe', VM-active=053f00be(pprc=c087ba2c) 'MyTest.exe'
    PC=4007a930(coredll.dll+0x0006a930) RA=4007a794(coredll.dll+0x0006a794) SP=00053ba8, BVA=00001003
    Exception 'Data Abort' (0x4): Thread-Id=05fe00b2(pth=c0869000), Proc-Id=053f00be(pprc=c087ba2c) 'MyTest.exe', VM-active=053f00be(pprc=c087ba2c) 'MyTest.exe'
    PC=4007a930(coredll.dll+0x0006a930) RA=4007a794(coredll.dll+0x0006a794) SP=00053568, BVA=00001003
    Exception 'Data Abort' (0x4): Thread-Id=05fe00b2(pth=c0869000), Proc-Id=053f00be(pprc=c087ba2c) 'MyTest.exe', VM-active=053f00be(pprc=c087ba2c) 'MyTest.exe'
    PC=4007a930(coredll.dll+0x0006a930) RA=4007a794(coredll.dll+0x0006a794) SP=00052f28, BVA=00001003
    Exception 'Data Abort' (0x4): Thread-Id=05fe00b2(pth=c0869000), Proc-Id=053f00be(pprc=c087ba2c) 'MyTest.exe', VM-active=053f00be(pprc=c087ba2c) 'MyTest.exe'
    PC=4007a930(coredll.dll+0x0006a930) RA=4007a794(coredll.dll+0x0006a794) SP=000528e8, BVA=00001003
    Exception 'Data Abort' (0x4): Thread-Id=05fe00b2(pth=c0869000), Proc-Id=053f00be(pprc=c087ba2c) 'MyTest.exe', VM-active=053f00be(pprc=c087ba2c) 'MyTest.exe'
    PC=4007a930(coredll.dll+0x0006a930) RA=4007a794(coredll.dll+0x0006a794) SP=000522a8, BVA=00001003
    Exception 'User Stack Overflow' (0xfffffffd): Thread-Id=05fe00b2(pth=c0869000), Proc-Id=053f00be(pprc=c087ba2c) 'MyTest.exe', VM-active=053f00be(pprc=c087ba2c) 'MyTest.exe'
    PC=400666a4(coredll.dll+0x000566a4) RA=4002ed34(coredll.dll+0x0001ed34) SP=00051d3c, BVA=00051d1c
    Exception 'Data Abort' (0x4): Thread-Id=05fe00b2(pth=c0869000), Proc-Id=053f00be(pprc=c087ba2c) 'MyTest.exe', VM-active=053f00be(pprc=c087ba2c) 'MyTest.exe'
    PC=4007a930(coredll.dll+0x0006a930) RA=4007a794(coredll.dll+0x0006a794) SP=000516fc, BVA=00000004
    Exception 'Data Abort' (0x4): Thread-Id=05fe00b2(pth=c0869000), Proc-Id=053f00be(pprc=c087ba2c) 'MyTest.exe', VM-active=053f00be(pprc=c087ba2c) 'MyTest.exe'
    PC=4007a930(coredll.dll+0x0006a930) RA=4007a794(coredll.dll+0x0006a794) SP=000510bc, BVA=00001003
    !!! Committed last page of the stack (0x00001003) or invalid stack pointer (0x000510bc), SEH bypassed, thread terminated !!!

    其中关键信息:
    (1) Exception 'User Stack Overflow' (0xfffffffd)
    (2) !!! Committed last page of the stack (0x00001003) or invalid stack pointer (0x000510bc), SEH bypassed, thread terminated !!!

    由于是偶尔出现的问题,目前还没有找到引起上述异常信息的原因。

    修改了工程的属性中:
    配置属性->链接器->系统 下的:
    (1) 堆栈保留大小 65536 修改为 131072
    (2) 堆栈提交大小 4096 修改为 8192
    都扩大了2倍。
    以下修改是否有效,还需要进一步测试与验证。

  • 相关阅读:
    二 .数据库(Data)操作
    一. 数据库(Data)基础
    五种IO/模型
    并发编程 (协程)
    七.并发编程 (线程池,返回值,回调函数)
    六.并发编程 (线程对列)
    五.并发编程 (线程事件)
    四.并发编程 (线程信号量)
    三.并发编程 (线程锁)
    二.并发编程 (程序中线程操作)
  • 原文地址:https://www.cnblogs.com/91program/p/5216570.html
Copyright © 2011-2022 走看看