7

我需要在我的 Python 程序中播放声音,所以我使用了playsound模块:

def playy():
    playsound('beep.mp3')

如何修改它以在 main 方法中作为新线程运行?如果条件为真,我需要在 main 方法中运行此方法。当它为假时,线程需要停止。

4

3 回答 3

5

您可能不必担心使用线程。您可以简单地调用 playsound,如下所示:

def playy():  
    playsound('beep.mp3', block = False)

这将允许程序继续运行,而无需等待声音播放完成。

于 2019-06-20T03:31:50.223 回答
4

使用线程库:

from threading import Thread
T = Thread(target=playy) # create thread
T.start() # Launch created thread
于 2018-11-11T08:19:58.583 回答
2

由于 python 多线程并不是真正的多线程(更多关于这里),我建议使用多进程:

from multiprocessing import Process

def playy():
    playsound('beep.mp3')


P = Process(name="playsound",target=playy)
P.start() # Inititialize Process

可以随意终止P.terminate()

于 2018-11-11T08:23:14.600 回答