Передача переменных в питон процесса - PullRequest
0 голосов
/ 23 мая 2018

Нужна помощь с тем, как изменить / исправить код, чтобы я мог контролировать, что происходит в процессе.Я осмотрелся и прочитал, что мне нужно либо создать глобальную переменную, которую процесс может прочитать, либо использовать функцию события для запуска процесса.Проблема в том, что я не знаю, как реализовать их в функции класса.Я подумал, что если бы я следовал pyimagesearch code , это бы сработало, но похоже, что оно работает только с модулем потоков, а не с многопроцессорным модулем.

import RPi.GPIO as GPIO
from RPI.GPIO import LOW,OUT,HIGH,BCM
import multiprocessing as mp
import time

class TestClass():
    def __init__(self,PinOne=22,PinTwo=27):
        self.PinOne = PinOne
        self.PinTwo = PinTwo

        self.RunningSys = True

        GPIO.setmode(BCM)
        GPIO.setup(PinOne,OUT)
        GPIO.output(PinOne,LOW)
        GPIO.setup(PinTwo,OUT)
        GPIO.output(PinTwo,LOW)

   def Testloop(self):
        while self.RunningSys:
            GPIO.output(PinOne,HIGH)
            GPIO.output(PinTwo,HIGH)
            time.sleep(1)
            GPIO.output(PinOne,LOW)
            GPIO.output(PinTwo,LOW)
        GPIO.output(PinOne,LOW)
        GPIO.output(PinTwo,LOW)

   def StopPr(self):
        self.RunningSys = False

   def MProc(self):
       MPGP = mp.process(target=TestClass().Testloop())
       MPGP.start()
       MPGP.join()

В отдельном скрипте

From testfile import TestClass
import time

TestClass().MProc()
time.sleep(4)
TestClass().StopPr()
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...