5

我是 GTK+ 编程的新手。我遇到了一个名为g_main_loop(). 我在我的代码中使用了它,但我仍然不知道它是如何工作的。有人可以g_main_loop()用小代码片段解释吗?

4

1 回答 1

4

我建议从链接到函数开始阅读文档g_main_loop_new()

基本上,让 glib “拥有”应用程序的主循环可以更容易地支持诸如“可插入”事件源之类的东西;您的应用程序在其中侦听(例如)来自 GTK+ 小部件的事件以及网络套接字或 Unix 管道。这些东西需要在应用程序的主循环中以相当低的级别连接在一起,让 glib 拥有这些部分会更容易。

有一些与主循环兼容的glib 数据结构(如IO 通道),并允许您将内容添加到循环管理的输入集中。对于 GTK+,连接是自动的,并且 GTK+ 的主循环 ( gtk_main()) 包装了 glib 的。

于 2010-01-17T10:33:55.543 回答