多处理产生进程但不称为函数

时间:2013-05-10 14:00:11

标签: python multiprocessing

我正在使用多处理来调用一个函数,该函数将您按键盘上的键作为参数。但是当我启动程序时,任务管理器中会出现一个新进程,但我的功能不起作用。我的代码是:

#Initalisation
global event
global hitkey


#Functions 

def key(event): 

 hitkey = event.char 
 instance = multiprocessing.Process(target=player, args=(hitkey,)) 
 instance.start()
 print(hitkey)


def player(hitkey):
     print(hitkey + "1")
     winsound.PlaySound(hitkey + '.wav', winsound.SND_FILENAME|winsound.SND_NOWAIT|winsound.SND_ASYNC) 


if __name__ == "__main__":


     #Initialisation 
     fenetre = Tk() 
     frame = Frame(fenetre, width=200, height=100)
     #TK

     frame.focus_set()
     frame.bind("<Key>", key)
     frame.pack()
     fenetre.mainloop()

我使用“print(hitkey)print(hitkey + "1")作为标记来查看我的密钥会发生什么。当我按下某个键时,新进程会生成,该字母会显示在控制台中,但不是”字母+ 1“。所以我觉得我的多处理代码行中出了问题。 任何人都可以帮助我吗?

0 个答案:

没有答案