0

我目前有一个应用程序,它有四个 QNetworkAccessManagers 在重复计时器的四个不同时间被调用。当该与经理再次发布/阅读时,我会致电:

例子:

reply = manager#->get(QNetworkRequest(QUrl(URL)));

计时器到期时间:

Manager1 - 10s
Manager2 - 15s
Manager3 - 90s
Manager4 - 300s

这工作得很好。但是,经过这么多天的运行,在我收到 4 人中的 1 人的回复后,我得到了

can't find linker symbol for virtual table for `QDynamicMetaObjectData' value
    found `QXmlUtils::isPublicID(QString const&)' instead
Couldn't restore frame #2 in current thread, at reparsed frame #0
Couldn't restore frame #2 in current thread, at reparsed frame #0

要不就

Couldn't restore frame #1 in current thread, at reparsed frame #0
Couldn't restore frame #1 in current thread, at reparsed frame #0
Couldn't restore frame #1 in current thread, at reparsed frame #0
Couldn't restore frame #1 in current thread, at reparsed frame #0

然后程序崩溃。我的问题是:以前有人见过吗?

4

1 回答 1

1

这样的错误通常来自gdb.

由于您坚持不在调试器下运行它,那么另一种可能性是您在某处损坏了内存,可能是 ELF 表或类型信息数据等。

在下运行它valgrind,看看是否有错误。我敢打赌,你会很快找到它。

于 2013-09-05T00:37:38.820 回答