结合使用 call_soon_threadsafe 和 GLib.idle_add 是从 asyncio 安全调用 GTK 代码的正确方法吗,还是有点过度?
我有一个在 asyncio 事件循环中运行的应用程序,我想添加一个与我的 Gnome Shell 交互的功能,特别是发送通知。由于 GTK 有自己的(我理解是不兼容的)事件循环,我决定将其放入Gio.Application后台线程。我的问题是关于从我的 asyncio 事件循环运行“GTK 代码”的适当方法,例如创建通知并从我的应用程序中触发它。 以下面的代码为例,我使用以下代码行来调度“添加通知”方法: asyncio.get_event_loop().call_soon_threadsafe(GLib.idle_add, app.add_noti...