Playsound 不适用于多处理
Playsound does not work with multiprocessing
我想使用多处理来随时播放和停止一个声音文件,但是当我开始这个过程时没有声音播放。
from multiprocessing import Process
from playsound import playsound
def sound():
playsound('sound.mp3')
p = Process(target=sound)
p.start()
当我尝试单独使用 sound()
时,它工作得很好,但使用多处理时它不起作用。
即使我添加p.join()
,代码也只是在我启动它时立即结束,没有播放声音,IDLE 中也没有显示错误消息Shell。
我该如何解决这个问题?
将执行代码放在“if”子句中,如下所示,解决了我电脑上的问题。
如果这对您不起作用,请更详细地说明情况,例如你是如何 运行 代码,你的 OS,Python 版本,等等
from multiprocessing import Process
from playsound import playsound
def sound():
playsound('sound.mp3')
if __name__ == "__main__":
p = Process(target=sound)
p.start()
我想使用多处理来随时播放和停止一个声音文件,但是当我开始这个过程时没有声音播放。
from multiprocessing import Process
from playsound import playsound
def sound():
playsound('sound.mp3')
p = Process(target=sound)
p.start()
当我尝试单独使用 sound()
时,它工作得很好,但使用多处理时它不起作用。
即使我添加p.join()
,代码也只是在我启动它时立即结束,没有播放声音,IDLE 中也没有显示错误消息Shell。
我该如何解决这个问题?
将执行代码放在“if”子句中,如下所示,解决了我电脑上的问题。 如果这对您不起作用,请更详细地说明情况,例如你是如何 运行 代码,你的 OS,Python 版本,等等
from multiprocessing import Process
from playsound import playsound
def sound():
playsound('sound.mp3')
if __name__ == "__main__":
p = Process(target=sound)
p.start()