python — отладчик не отсоединяется от Winpdb

Я использую PythonQT для выполнения скрипта Python (потому что мне нужно вызывать методы C ++ из скрипта Python)

Моя версия winpdb — 1.4.6, а компьютер — CetOS 6.5

Теперь я хочу включить отладку в скрипте Python

я добавил rpdb2.start_embedded_debugger('test') внутри сценария и называется PythonQt.EvalFile() функция, теперь скрипт ожидает отладчика.

Я открыл пользовательский интерфейс winpdb из терминала и подключен к отладчику. Я могу сделать «Далее», «Шаг в» и т. Д., И все локальные переменные видны правильно
Но когда я пытаюсь отключить отладчик, он не отключается. Статус показывает «DETACHING» и ничего не происходит, и я даже не могу закрыть winpdb. Единственный выход — это убить winpdb.

Если я запускаю тот же файл скрипта из терминала, он работает правильно (python) и отключается, как и ожидалось.

Просматривая журналы, я обнаружил, что, если я запускаю из терминала, то канал отладки шифруется, но когда от PythonQt канал отладки НЕ зашифрован, не уверен, что это имеет какое-либо отношение к отсоединению.

Продолжая изучать код rpdb2.py, я обнаружил, что Winpdb зависает на линии self.getSession().getProxy().request_go(fdetach) из request_go(self, fdetach = False): в rpdb2.py

Порт 51000 все еще находится в установленном режиме

Пожалуйста, сообщите мне об этом.

0

Решение

Наконец, я исправил проблему, используя последнюю версию Python QT

0

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

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

По вопросам рекламы [email protected]