我目前正在使用sox对音频文件应用特效并播放该文件。目前,我已经将代码设置为创建一个新的子进程,以便在按下按钮1时播放文件,并在按下按钮2时终止进程。
我想要做的是改变它,以便如果按钮1被按下多次,它将检查前一个进程是否处于活动状态,如果是,则终止它,如果不是,则按正常方式播放。
我现在的代码是:
def Button_1():
p = subprocess.Popen(['play','playback.wav'])
def Button_2():
p.send_signal(signal.SIGNIT)发布于 2016-09-26 13:08:08
使用p.poll()检查进程是否仍在运行。
代码将如下所示(未经测试):
def Button_1():
if p.poll():
p.send_signal(signal.SIGNIT)
else:
p = subprocess.Popen(['play','playback.wav'])
def Button_2():
p.send_signal(signal.SIGNIT)https://stackoverflow.com/questions/39694424
复制相似问题