Многопоточность не работает

@KSFT

в настоящее время разочарован моей неспособностью либо расшифровать форматирование в stackru, либо заставить работать простой скрипт на Python...

что здесь не так?

программа запрашивает ввод для определения значения задержки, но это не приводит к включению светодиода.

import threading
import RPi.GPIO as GPIO
import time
GPIO.setmode(GPIO.BCM)
GPIO.setup(7, GPIO.OUT)
frequency = 0.05
dwell = 0.01


def get_input():
    while True:
        dwell=raw_input("Brightness: ")

input_thread=threading.Thread(target=get_input())
input_thread.start()

while True:
    time.sleep(frequency)
        GPIO.output(7, 1)
        time.sleep(dwell)
        GPIO.output(7, 0)

1 ответ

input_thread=threading.Thread(target=get_input())   

неправильно!

input_thread=threading.Thread(target=get_input) 

правильно!

нарезания резьбы

class threading.Thread(group=None, target=None, name=None, args=(), kwargs={})

Если вы хотите дать arg для get_input, вам нужно дать ему throw args и kwargs.

Пример:

 1 #!/usr/bin/python
 2 #current's number of threads
 3 import threading
 4 import time
 5 
 6 def worker():
 7     print "test"
 8     time.sleep(1)
 9 
 10 for i in xrange(5):
 11     t = threading.Thread(target=worker)
 12     t.start()
 13 
 14 print "current has %d threads" % (threading.activeCount() - 1)

целевой = рабочий ().
целевой = рабочий

целевой = рабочие.
целевых = работник

Другие вопросы по тегам