Как g_main_loop работает в программировании gtk?

Я плохо знаком с GTK + программирование. Я столкнулся с названным API g_main_loop(). Я использовал его в своем коде, но я все еще не знаю это, как точно это работает. Может кто-то объяснять g_main_loop() с маленьким фрагментом кода?

5
задан unwind 17 January 2010 в 10:35
поделиться

1 ответ

Я рекомендую ознакомиться с документацией , начиная со связанной с функцией g_main_loop_new().

В основном, позволяя glib "владеть" основным циклом вашего приложения, облегчается поддержка таких вещей, как "подключаемые" исходники событий; где ваше приложение прослушивает как (например) события, исходящие от виджетов GTK+, так и сетевой сокет или Unix-трубопровод. Это вещи, которые должны быть соединены вместе на довольно низком уровне в основном цикле приложения, и позволять glib владеть этими частями делает это проще.

Есть структуры данных glib (например, IO-каналы ), которые совместимы с основным циклом и позволяют добавлять вещи в набор входов, которыми управляет цикл. Для GTK+ соединения автоматические, а основной цикл GTK+ (gtk_main()) обертывает glib'ы.

4
ответ дан 15 December 2019 в 01:02
поделиться
Другие вопросы по тегам:

Похожие вопросы: