私のアプリケーションはループ内で実行されています。時には、ループからledフラッシュ関数を呼び出す必要があります。私はこれほど多くをこのようにした。Pythonはサブ関数をスレッドする
def led_red_flash(flashcount):
logging.debug('Starting')
for l in range(0,flashcount):
GPIO.output(16,GPIO.HIGH)
time.sleep(0.1)
GPIO.output(16,GPIO.LOW)
time.sleep(0.1)
logging.debug('Stopping')
while True:
<do some stuff here>
t = threading.Thread(name='led_red_flash', target=led_red_flash(100))
t.start()
これは動作しますが、def led_red_flashの部分にすべてのスレッドの内容を入れる日がありますか?スクリプトが複雑になるにつれて、読みにくくなります。そうですね。
while True:
<do some stuff here>
led_red_flash(100)
上記は、実行しているループの非常に単純化されたバージョンです。実際のスクリプトでは、led_red_flashの複数のインスタンスを同時に実行することはできません。これは問題ではありません。
へ
あなたは設計レビューを求めている、またはあなたがプログラミングの問題がありますか? –