1
def on_press(self):
file_name = self.filename
if(self.flag1<3):
var="thread1"+str(self.flag1)
var=myThread(1,file_name)
self.flag1=self.flag1+1
print "Thread count is "+str(threading.active_count())
var.start()
這裏flag1
最初設置爲1
。每次按下前端的按鈕時都會調用函數on_press()
。Pygame和線程
我myThread
類():
class myThread (threading.Thread):
def __init__(self,counter,file_name):
threading.Thread.__init__(self)
self.counter = counter
self.file_name=file_name
def run(self):
print "Starting "
channel=pygame.mixer.music.load(self.file_name)
channel=pygame.mixer.music.play()
print "Exiting "
現在我的問題是我每次通話時間on_press()
功能新線程被創建和它覆蓋的任何音頻文件被打那個。我希望所有線程同時播放音頻文件。新線程不應覆蓋其他已創建線程播放的音樂。我會怎麼做?
我對解決方案並不完全確定,但我確信pygame.mixer運行在它自己完全不同的pygame的其他線程中,所以您實際上每次都訪問同一個線程。我會嘗試使用pygame.mixer.Sound而不是音樂。 – KSab