Использование QProcess в PyQt для запуска метода класса

#python #multiprocessing #pyqt5 #qprocess

#python #многопроцессорная обработка #pyqt5 #qprocess

Вопрос:

Я пытаюсь использовать QProcess для запуска метода класса в отдельном процессе. Я знаю, что следующий код не будет работать, но мне интересно, есть ли настройка для запуска нового процесса с помощью QProcess , а не с помощью multiprocessing.process(target=function_name)

 import multiprocessing
from PyQt5 import QtCore

class myClass:
    def __init__(self):
        self.x = 20

    def loop(self,):
        for i in range(1,1000):
            self.x = i

M = MyClass()

# p = multiprocessing.process(target=MyClass.loop) # Is QProcess capable of doing this?
p = QtCore.QProcess(myClass.loop) # I know this won't work but I am looking for a way to use QProcess for ths purpose
p.start()
  

Ответ №1:

Я рекомендую вам открыть QThread и поместить все ваши переменные в класс thread, в классе thread выполните QProcess, и вот пример из моего проекта: https://www.github.com/min20120907/Cell_RCNN_Qt/tree/master/Cell_Trainer.py