В pyqt есть ли способ сообщить вторичному потоку (QThread), чтобы вызвать исключение - PullRequest
0 голосов
/ 16 ноября 2011

Моя функция запуска во вторичном потоке выглядит следующим образом:

def run(self):
    try:
        self.TestScript()
    except  Exception,  e:
        //Bunch of clean up code...

Обычно это здорово, потому что любое исключение позволяет очистить систему и перевести ее в безопасное состояние. Я хочу добавить кнопку «Прервать» в первичном потоке, которая вызывает исключение во вторичном потоке. Я попытался создать метод в объекте QThread, который вызывает исключение, но это основной поток, который вызывает исключение при срабатывании сигнала.

Кто-нибудь знает, можно ли сигнализировать QThread, чтобы вызвать исключение в его собственном потоке асинхронно?

1 Ответ

0 голосов
/ 16 ноября 2011

Пожалуйста, посмотрите на Сигналы и слоты между потоками .Я думаю, что вы после типа Qt.QueuedConnection , который вы должны передать в качестве аргумента connect.

...