TID 32190中的Android致命信号7(SIGBUS),代码1,故障加法器0xb8509ce1(com.example)

用户名

在我的应用程序中,我使用C ++代码进行编译.xxx.cpp中有一个类似这样的函数:

void Cache::addRequest(SREQUEST req)
{
    m_reqs.push_back(req);
}

当我的应用程序调用此函数时,它将引发运行时错误:

Fatal signal 7 (SIGBUS), code 1, fault addr 0xb8509ce1 in tid 32190 (com.example)

属性“ m_reqs”是矢量对象,已在头文件(xxx.h)中清除:

vector<SREQUEST> m_reqs;

struct SREQUEST
{
    SREQUEST()
    {
        code = "";
        oldLen = 0;
    }
    TimeRound tr;          // enum(int type)
    std::string code;
    int oldLen;
};

我对类“ Cache”使用单例模式。

Cache* Cache::getInstance()
{
     static Cache* _instance;
     // init
     if (_instance == NULL) 
     {
         _instance = new Cache();
     }

     // return the pointer
     return _instance;
}

该错误仅由真实电话而不是模拟器抛出。我找到了解决方案,但我不知道是什么原因导致了这个问题。我的意思是它总是出现:

SREQUEST req;
req.code = "123";
req.tr = 1;
req.oldLen = 0;
Cache::getInstance()->addRequest(req); // cause error

我将其修复为:

typedef vector<SREQUEST> VEC_SREQUEST;
VEC_SREQUEST* Cache::getVector()
{
    if(v_reqs == 0)     // int type
    {
        vector<SREQUEST>* TEMP = new vector<SREQUEST>();
        void* x = (void*)TEMP;
        v_reqs = (int)x;
    }
    void* temp = (void*)v_reqs;
    VEC_SREQUEST* res = ((VEC_SREQUEST*)temp);
    return res;
}

void Cache::addRequest(SREQUEST req)
{
    VEC_SREQUEST* vec = getVector();
    vec->push_back(req);
}

在我的cpp中,我广泛使用了代码“ xxx.push_back(something)”。使用该解决方案需要大量时间。

那么是什么原因导致“ xxx.push_back”无法正常工作?并且无需进行较大的修改就可以解决它?

用户名

我知道原因了。

我取消了xxx.h文件底部的矢量对象,首先编写了函数语句。

换了个位置,一切都OK!

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

TID 32190中的Android致命信号7(SIGBUS),代码1,故障加法器0xb8509ce1(com.example)

来自分类Dev

TID 29092中的Android致命信号11(SIGSEGV),代码1,故障加法器0x0

来自分类Dev

TID 5091中的致命信号11(SIGSEGV),代码1,故障加法器0x18

来自分类Dev

Android从线程错误中调用jni方法(A / libc:致命信号11(SIGSEGV),代码1,在tid 13620(AsyncTask#3)中的故障加法器0xdeadbaad)

来自分类Dev

使用Gson时,TID 12680中的致命信号11(SIGSEGV),代码128,故障加法器0x0

来自分类Dev

Android Libgdx致命信号11(SIGSEGV),代码1,故障加法器0x0

来自分类Dev

从Bash中的PID获取TID列表

来自分类Dev

致命信号 11 (SIGSEGV),代码 2,tid 21198 中的故障地址 0x7fa4c3813c(Crashlytics Exc)

来自分类Dev

Android Lollipop 5.1:TID 4093(RenderThread)中的致命信号11(SIGSEGV),代码2,故障添加器0x9e985ff8 /使用很多九个补丁图形时

来自分类Dev

未定义的索引:drupal 7中的taxonomy_field_formatter_prepare_view()错误中的tid

来自分类Dev

Apache Spark:作业由于阶段故障而中止:“ TID x因未知原因而失败”

来自分类Dev

从TID获取PID

来自分类Dev

观察到域随机崩溃“ tid 28688(RealmFinalizing),pid 28451中的致命信号6(SIGABRT),代码-6(SI_TKILL)”

来自分类Dev

EXCEPTION_ACCESS_VIOLATION(0xc0000005)at pc = 0x697e0aea,pid = 11340,tid = 11292

来自分类Dev

[email protected]”->“ example” PHP

来自分类Dev

Example of Twilio in Android Studio

来自分类Dev

TID键是否保留有JSON

来自分类Dev

试图理解此代码加法器[[1]](5)

来自分类Dev

Ping example.com 导致 PING example.com.com

来自分类Dev

http://example.com、http://www.example.com和https://example.com到https://www.example.com

来自分类Dev

什么时候在Perl中@example的$ example [n] undef是?

来自分类Dev

Decrypt android AES example on iOS

来自分类Dev

example.com、www.example.com 和 example.com/ 之间有什么区别?

来自分类Dev

.htaccess重定向到example.com,但目录重定向到example.com/example

来自分类Dev

使用.htaccess将subdomain1.example.com转发到subomain2.example2.com

来自分类Dev

Running Kubernetes Example on CoreOS, Part 1 not work

来自分类Dev

如何通过已知的PID / TID获得JVM线程名称/ ID

来自分类Dev

How to obtain the JVM thread name/id through the known PID/TID

来自分类Dev

如何通过已知的PID / TID获取JVM线程名称/ ID

Related 相关文章

  1. 1

    TID 32190中的Android致命信号7(SIGBUS),代码1,故障加法器0xb8509ce1(com.example)

  2. 2

    TID 29092中的Android致命信号11(SIGSEGV),代码1,故障加法器0x0

  3. 3

    TID 5091中的致命信号11(SIGSEGV),代码1,故障加法器0x18

  4. 4

    Android从线程错误中调用jni方法(A / libc:致命信号11(SIGSEGV),代码1,在tid 13620(AsyncTask#3)中的故障加法器0xdeadbaad)

  5. 5

    使用Gson时,TID 12680中的致命信号11(SIGSEGV),代码128,故障加法器0x0

  6. 6

    Android Libgdx致命信号11(SIGSEGV),代码1,故障加法器0x0

  7. 7

    从Bash中的PID获取TID列表

  8. 8

    致命信号 11 (SIGSEGV),代码 2,tid 21198 中的故障地址 0x7fa4c3813c(Crashlytics Exc)

  9. 9

    Android Lollipop 5.1:TID 4093(RenderThread)中的致命信号11(SIGSEGV),代码2,故障添加器0x9e985ff8 /使用很多九个补丁图形时

  10. 10

    未定义的索引:drupal 7中的taxonomy_field_formatter_prepare_view()错误中的tid

  11. 11

    Apache Spark:作业由于阶段故障而中止:“ TID x因未知原因而失败”

  12. 12

    从TID获取PID

  13. 13

    观察到域随机崩溃“ tid 28688(RealmFinalizing),pid 28451中的致命信号6(SIGABRT),代码-6(SI_TKILL)”

  14. 14

    EXCEPTION_ACCESS_VIOLATION(0xc0000005)at pc = 0x697e0aea,pid = 11340,tid = 11292

  15. 15

    [email protected]”->“ example” PHP

  16. 16

    Example of Twilio in Android Studio

  17. 17

    TID键是否保留有JSON

  18. 18

    试图理解此代码加法器[[1]](5)

  19. 19

    Ping example.com 导致 PING example.com.com

  20. 20

    http://example.com、http://www.example.com和https://example.com到https://www.example.com

  21. 21

    什么时候在Perl中@example的$ example [n] undef是?

  22. 22

    Decrypt android AES example on iOS

  23. 23

    example.com、www.example.com 和 example.com/ 之间有什么区别?

  24. 24

    .htaccess重定向到example.com,但目录重定向到example.com/example

  25. 25

    使用.htaccess将subdomain1.example.com转发到subomain2.example2.com

  26. 26

    Running Kubernetes Example on CoreOS, Part 1 not work

  27. 27

    如何通过已知的PID / TID获得JVM线程名称/ ID

  28. 28

    How to obtain the JVM thread name/id through the known PID/TID

  29. 29

    如何通过已知的PID / TID获取JVM线程名称/ ID

热门标签

归档