Класс многопроцессорности Python: руководство по реализации многопроцессорности в Python

Вот пример многопроцессорного класса Python:

import multiprocessing
class MyProcess(multiprocessing.Process):
    def __init__(self, name):
        super(MyProcess, self).__init__()
        self.name = name
    def run(self):
        print(f"Process {self.name} is running")
if __name__ == '__main__':
    process1 = MyProcess("Process 1")
    process2 = MyProcess("Process 2")
    process1.start()
    process2.start()
    process1.join()
    process2.join()

В этом примере мы создаем класс MyProcess, который наследуется от класса multiprocessing.Process. Класс MyProcessпереопределяет метод run, который является точкой входа для процесса. Внутри метода runвы можете определить код, который должен выполнять процесс.

Чтобы создать и запустить экземпляры класса MyProcess, мы создаем экземпляры двух объектов, process1и process2, и вызываем их startметоды. Метод startвнутренне вызывает метод runкаждого процесса в отдельном дочернем процессе.

Наконец, мы вызываем метод joinдля каждого процесса, чтобы дождаться завершения его выполнения.

Вот несколько методов, обычно используемых с модулем многопроцессорности:

  1. Процесс: базовый класс для создания процессов.
  2. start(): запускает процесс, вызывая его метод run.
  3. run(): метод, содержащий код, который будет выполнен процессом.
  4. join(): ждет завершения выполнения процесса.
  5. is_alive(): возвращает True, если процесс в данный момент запущен.
  6. terminate(): резко завершает процесс.
  7. name(): возвращает имя процесса.