加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Java > 正文

多线程 – *** glibc检测到***双重免费或腐败(fasttop):

发布时间:2020-12-15 08:32:06 所属栏目:Java 来源:网络整理
导读:对QByteArray的清除调用会生成以下异常: *检测到glibc * / home / yan / FPS2 / FPS2:双重免费或损坏(fasttop): 0 ?? 1 ?? 2免费 3 QByteArray :: clear() 4 FPSengine :: getDatagrams 5 FPSengine :: xmitData 6 FPSengine :: getData 7 threadDatalog
对QByteArray的清除调用会生成以下异常:

*检测到glibc * / home / yan / FPS2 / FPS2:双重免费或损坏(fasttop):

0 ??
1 ??
2免费
3 QByteArray :: clear()
4 FPSengine :: getDatagrams
5 FPSengine :: xmitData
6 FPSengine :: getData
7 threadDatalog :: run
8 ??
9 start_thread
10克隆
11 ?? 0

这是一个qt错误还是可能与我的代码有关?我知道QObjects不是线程安全的(QT定义不是多个线程调用相同对象实例的相同功能)但我的函数有互斥.即使经常调用相同的函数,我也很少得到此错误.附:防止这种情况的一种方法是env var MALLOC_CHECK_ 0

这个网址涉及类似的问题,一些帖子似乎暗示它是由不兼容的glibc版本引起的.

*** glibc detected *** perl: double free or corruption (!prev): 0x0c2b7138 ***

解决方法

它可能是许多不同的东西,包括引用函数调用返回的临时QByteArray,但它不太可能(IMO)成为Qt中的错误.

以下是调试的一些想法:

>在Valgrind下运行它,看看它是否会突出显示问题>针对具有可用调试符号的Qt版本运行您的应用程序>启用核心转储并查看是否获得核心文件

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读