2017-06-22 8 views
1

私はPythonには新しく、ボイス制御のホームオートメーションシステムを構築しようとしています。 1つのことを除いて、すべてが本当にうまくいっています。 私は「停止」と言うときに何をしているのかを止めるためにシステムが必要です。たとえば、音楽を再生しているときやニュースを伝えているときに、「停止」と言えば、すべてを停止してスタンバイモードに戻ります。フロントで他の機能を実行しているときに、バックグラウンドで機能を実行するにはどうすればいいですか?

バックグラウンドには、正面に他のものをやっているうちに、「停止」を常に聞くように、どうすればいいですか?

これは特定の部分のために私のコードです:

def stop(): 
    #code_that_listens_for_"stop" 

def main(): 
    #code_that_listens_and_executes_commands 

# runs at the start of the program 
if __name__ == '__main__': 
    Thread(target = main).start() 
    Thread(target = stop).start() 

は正しい私のコードですか?

ありがとうございます!これはstackexchangeでの私の最初の質問ですが、任意の助けをいただければ幸いです^^

答えて

0

代わりにスレッドの使用方法のあなたは、高速で無ギル、のような効率的なより多くの利点が得られます

from multiprocessing import Process 
def stop(): 
    #code_that_listens_for_"stop" 

def main(): 
    #code_that_listens_and_executes_commands 

# runs at the start of the program 
if __name__ == '__main__': 
    Process(target=stop).start() 
    Process(target=main).start() 
私はスレッド輸入糸から」固定
+0

"to" from threading import Process "しかし、私のテキストエディタ(Atom)は、名前プロセスをインポートできないと言っています。 –

+0

ansさん、私の友人を更新しました。 'マルチプロセスインポートプロセスから' –

関連する問題