猿问

Kivy 简单的多线程 python

不确定是否有人可以帮助我解决这个问题。我一直无法在任何地方找到一个简单的答案。

我正在 Kivy 中构建一个 GUI,它显示网络摄像头提要(使用 openCV)并有两个按钮(按钮 A 和 B)。当我按下按钮 A 时,它会调用一个执行某些操作的函数。但是,当被调用的函数正在执行时,我的屏幕和 GUI 会冻结。

如何实现按下按钮调用的函数以在 python 中的不同线程上运行?


Cats萌萌
浏览 108回答 2
2回答

慕斯709654

如果您的按钮调用一个需要时间执行的函数,kivy 窗口会冻结,直到该函数完成。您可以使用多线程并让一个线程执行该功能。我没有你的代码,但例如:from threading import Thread# the function that the button executesdef button_press():    # create the thread to invoke other_func with arguments (2, 5)    t = Thread(target=other_func, args=(2, 5))    # set daemon to true so the thread dies when app is closed    t.daemon = True    # start the thread    t.start()def other_func(a, b):    # your code here
随时随地看视频慕课网APP

相关分类

Python
我要回答