2017-06-22 170 views
1

我对Python很陌生,我试图建立一个语音控制的家庭自动化系统。除了一件事外,一切都很顺利。 当我说'停止'时,我需要系统停止它正在做的事情。例如,当它播放音乐,或者当它告诉我这个消息时,如果我说“停止”,它会停止一切并返回到待机模式。如何在后台运行其他功能时在后台运行功能?

我该如何做到这一点,使背景中有一个python进程在前端执行其他任何事情时总是倾听“停止”?

这是我的特定部分代码:

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”从线程导入过程“,但我的文本编辑器(Atom)说我无法导入名称Process。 –

+0

ans更新了我的朋友'从多进程导入进程' –