Raspberry Pi上でPython3を使ったプログラムを書いており、その中で並列処理を行うとエラーsignal only works in main thread
が出てしまいます。
恐らくmain
の中でsignalを使っているのが関係している?と思っているのですが原因がいまいち掴めません。
なぜこのようなエラーが発生してしまうのでしょうか?
Python
1def A(): 2 TaskA 3 B() 4 5def B(): 6 TaskB 7 8def C(): 9 TaskC 10 11def main(): 12 while 1: 13 signal.signal(signal.SIGALRM, A) 14 signal.settimer(signal.ITIMER_REAL, 1, 1) 15 While 1: 16 time.sleep(1) 17 18thread1 = threading.Thread(target=main) 19thread2 = threading.Thread(target=C) 20thread1.start() 21thread2.start()
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。