qt — усеченный стек вызовов при отладке мьютекса c ++

При попытке отследить заблокированный мьютекс, вызов стека кажется обрезанным во время ожидания мьютекса. Я не вижу нормального графа вызовов, только следующее:

0 CpupSyscallStub wow64cpu 0x75132e09
1 Thunk0ArgReloadState wow64cpu 0x75132bf1
2 RunCpuSimulation wow64 0x751ad07e
3 Wow64LdrpInitialize wow64 0x751ac549
4 LdrpInitializeProcess ntdll 0x77984956
5 ?? :: FNODOBFM :: `string ‘ntdll 0x77981a17
6 LdrInitializeThunk ntdll 0x7796c32e

Это блокировка на QMutex, я разрабатываю с Qt Creator, используя CDB из MSVC2008. Я хотел бы иметь возможность видеть «нормальный» стек, то есть граф вызовов до точки вызова mutex.lock ().
Если бы мне пришлось угадывать, это было бы связано с отладкой 32-битного приложения на 64-битной машине. Есть идеи, как получить правильный callstack?

0

Решение

Эта ссылка кратко затрагивает проблему. Отладка Qt Windows

Это не проблема Qt или Qt Creator. CDB.exe, отладчик командной строки Windows (похож на GDB), построен в двух версиях, 32 и 64 бит. При отладке 32-битного приложения на 32-битной CDB стек приложения выглядит нормально. При отладке 32-битного приложения на 64-битной CDB стек запутывается 32-битным эмулятором.

0

Другие решения

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector