Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/345.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/user-interface/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 如何在不阻塞PyGTK中的UI的情况下异步获取值_Python_User Interface_Asynchronous_Callback_Pygtk - Fatal编程技术网

Python 如何在不阻塞PyGTK中的UI的情况下异步获取值

Python 如何在不阻塞PyGTK中的UI的情况下异步获取值,python,user-interface,asynchronous,callback,pygtk,Python,User Interface,Asynchronous,Callback,Pygtk,互联网上的好人 我正在编写一个GUI应用程序,需要从连接到Raspberry Pi的RFID卡扫描仪获取ID。我将PyGTK与Glade结合用于UI 当用户单击“确认”按钮时,我希望应用程序扫描任何卡(我有一个函数,其中有一个while True循环),但用户也应该能够按下“取消”按钮,停止扫描卡并重置一些值 我想通过在另一个线程(或进程)中启动扫描函数来实现这一点,扫描后,让该进程触发回调函数来处理ID并运行其他代码,但我找不到任何库允许我以我想象的方式实现这一点 我尝试使用Pool,但调用P

互联网上的好人

我正在编写一个GUI应用程序,需要从连接到Raspberry Pi的RFID卡扫描仪获取ID。我将PyGTK与Glade结合用于UI

当用户单击“确认”按钮时,我希望应用程序扫描任何卡(我有一个函数,其中有一个while True循环),但用户也应该能够按下“取消”按钮,停止扫描卡并重置一些值

我想通过在另一个线程(或进程)中启动扫描函数来实现这一点,扫描后,让该进程触发回调函数来处理ID并运行其他代码,但我找不到任何库允许我以我想象的方式实现这一点

我尝试使用Pool,但调用
Pool.apply\u async(RFID.Get,callback=self.OnScan).Get(timeout=15)
仍会阻止IO

在此之前,我在C#中做过一些异步工作,但对如何在Python中实现它一点也不熟悉

()

我需要在A.S.A.p.完成这项工作,因此任何帮助、提示或线索都将不胜感激。如果我需要提供任何代码,我会(虽然这个项目不是开源的,所以我不能分享一切)

先谢谢大家