gpt4 book ai didi

multithreading - *** 检测到 glibc *** 双重释放或损坏 (fasttop) :

转载 作者:行者123 更新时间:2023-12-01 10:14:46 28 4
gpt4 key购买 nike

对 QByteArray 的清除调用会产生以下异常:

* 检测到 glibc */home/yan/FPS2/FPS2: double free or corruption (fasttop):

0 ??1 ??
2 个免费
3 QByteArray::clear()
4 FPSengine::getDatagrams
5 FPSengine::xmitData
6 FPSengine::获取数据
7 线程数据日志::运行
8 ??
9 启动线程
10 克隆
11 ?? 0

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

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

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

最佳答案

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

这里有一些调试思路:

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

关于multithreading - *** 检测到 glibc *** 双重释放或损坏 (fasttop) :,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2197547/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com