多线程 – *** glibc检测到***双重免费或腐败(fasttop):
对QByteArray的清除调用会生成以下异常:
*检测到glibc * / home / yan / FPS2 / FPS2:双重免费或损坏(fasttop): 0 ?? 这是一个qt错误还是可能与我的代码有关?我知道QObjects不是线程安全的(QT定义不是多个线程调用相同对象实例的相同功能)但我的函数有互斥.即使经常调用相同的函数,我也很少得到此错误.附:防止这种情况的一种方法是env var MALLOC_CHECK_ 0 这个网址涉及类似的问题,一些帖子似乎暗示它是由不兼容的glibc版本引起的. *** glibc detected *** perl: double free or corruption (!prev): 0x0c2b7138 *** 解决方法
它可能是许多不同的东西,包括引用函数调用返回的临时QByteArray,但它不太可能(IMO)成为Qt中的错误.
以下是调试的一些想法: >在Valgrind下运行它,看看它是否会突出显示问题>针对具有可用调试符号的Qt版本运行您的应用程序>启用核心转储并查看是否获得核心文件 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |