简体   繁体   中英

c - GTK3.0 GUI freezes when using “g_spawn_async_with_pipes()”

I've written a very simple front end for ffmpeg (converting stuff: video -> mp3) in GTK3.0/C for linux. For spawning ffmpeg I use g_spawn_async_with_pipes() . I thought this was the right way to execute stuff like that without having the GUI freeze up - but it does though. So - how can I prevent it from freezing - so I can fe display a spinner?

You might need to add something like"

    while (gtk_events_pending ()) {
      gtk_main_iteration_do (FALSE);
}

That is, to let GTK process the pending events (like drawing the UI). I suppose you are processing the output of ffmpeg with g_io_add_watch or similar.

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM