【问题标题】:wxWidgets/GTK: How do I isolate wxWidgets's main loop from another main loop?wxWidgets/GTK:如何将 wxWidgets 的主循环与另一个主循环隔离?
【发布时间】:2022-08-29 00:16:03
【问题描述】:

我正在为Mupen64Plus 开发一个插件。虽然 Mupen64Plus 核心库不创建 GUI,但一个单独的组件(称为前端)会。

我使用 Eto 在 C# 中编写了前端,它通过在每个平台上使用本机工具包来与 wxWidgets 类似地工作。这意味着它也可以在 GTK3 上运行。有趣的是,似乎当我从 wxWidgets 调用ExitMainLoop 时,它似乎也随之取消了前端的主循环。

所以这是我的问题:如何将 wxWidgets 的主循环与前端的主循环隔离开来?在后台,两者都会调用gtk_main() 来启动它们的事件循环。

【问题讨论】:

    标签: c++ wxwidgets gtk3


    【解决方案1】:

    如果您可以在单独的线程中运行主循环,这将是最简单的解决方案。在同一个线程中运行两个偶数循环也是可能的,但需要它们之间的一些合作,例如从第一个循环手动分派另一个循环的事件。

    【讨论】:

    • 在 GTK 上尝试这个证明是徒劳的,因为结果正是我之前提到的。
    猜你喜欢
    • 1970-01-01
    • 2010-11-29
    • 1970-01-01
    • 2012-05-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-10-15
    相关资源
    最近更新 更多