valgrind检测到的非法读

来源:互联网 发布:stc15单片机实战指南 编辑:程序博客网 时间:2024/06/18 05:53
==9765== Invalid read of size 4
==9765==    at 0x45CCDA: nvrcore::Task::GetCmdType() (Task.h:49)
==9765==    by 0x45E8C9: nvrcore::NVRSession::HandleTask(nvrcore::Task*) (NVRSession.cpp:144)
==9765==    by 0x45CC63: nvrcore::SimpleTaskScheduler::ThreadMain() (SimpleTaskScheduler.cpp:101)
==9765==    by 0x682E58A: ThreadObject::TheThread(void*) (ThreadObject.cpp:218)
==9765==    by 0x4E3F181: start_thread (pthread_create.c:312)
==9765==    by 0x86A947C: clone (clone.S:111)
==9765==  Address 0x5945f0d8 is 72 bytes inside a block of size 80 free'd
==9765==    at 0x4C2C2BC: operator delete(void*) (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
==9765==    by 0x460A33: nvrcore::Task::~Task() (Task.cpp:64)
==9765==    by 0x45F909: nvrcore::NonblockingRspHandler::ThreadMain() (NonblockingRspHandler.cpp:127)
==9765==    by 0x682E58A: ThreadObject::TheThread(void*) (ThreadObject.cpp:218)
==9765==    by 0x4E3F181: start_thread (pthread_create.c:312)
==9765==    by 0x86A947C: clone (clone.S:111)

==9765== 


检测到的一个非法读,已经被 operator delete(void*)了,但是还在GetCmdType() ,调用他的成员函数

0 0
原创粉丝点击