Если вы можете скомпилировать свой модуль расширения с помощью gcc (например, с помощью Cygwin ), вы можете использовать gdb и макрос pystack gdb для получения стеков Python в этой ситуации. Я не знаю, было бы возможно сделать что-то эквивалентное pystack в Visual C ++ Express, но вы все равно могли бы получить некоторые идеи от реализации макроса pystack.
Поскольку вы упоминаете, что в отладчике VC ++ вы видите только asm / binary, вам следует убедиться, что вы компилируете Python с символами отладки. Если VC ++ по-прежнему показывает asm, возможно, вам нужно сообщить VC ++, где находятся исходные файлы (извините, VC ++ не использовался годами, поэтому я не могу сказать, что именно вам может понадобиться, если бы это было так) .
Вы также можете получить некоторую важную информацию, добавив множество вызовов журналирования в свой код, как на стороне Python, так и на расширение C ++.
В любом случае, я почти уверен, что взаимоблокировки связаны не с очередью, а с вашим собственным кодом.