Re: [問題] 請教在gtk程式下的fork如何update UI?

看板LinuxDev作者 (Kelvin)時間18年前 (2006/12/28 00:43), 編輯推噓0(000)
留言0則, 0人參與, 最新討論串3/3 (看更多)
haha 沒錯沒錯 就是從這程式來的 因為以前寫fork都是在console下面 不會去考慮UI的問題 所以第一件事也是去問了孤狗大仙gtk fork... 然後才有接下來的程式 :p 用pthread的架構做也是可以 不過總覺得用fork做起來比較code會直覺,簡單一些 還是會很想知道 fork的話要怎麼做 再者利用timer去update UI看起來無可避免的需要使用很多global variable 雖然目的一樣可以達的到 總是感覺不漂亮 (誰管你漂不漂亮啊 haha 明明是自己想太多 haha) ※ 引述《andytzeng (Ya-Shiuan)》之銘言: : gtk progress bar 我之前因為工作的關係有寫過(大學工讀而已啦) : 因為已經很久沒寫了,先大概講一下我的作法 : 我一般寫 gtk 程式不會用 fork 去動作,大都是利用 gtk 裡面的 : timer 機制(可以參考 gtk 中 progressbar 的範例,就是用 timer : 來完成 bar value 的改變) : 而如果會使用到 block 相關的函數,我以前寫的時候,是使用 pthread : 加上 gtk 的 thread 機制來做這一塊,避免因為使用到 block (如 I/O : 的等待),使得 GUI 無法順利 update screen : GTK 的環境全部寫成類似 event-driven 的作法,不建議使用 fork 來做 : by the way, 剛剛 google "gtk fork" 找到下面這範例 : http://mail.gnome.org/archives/gtk-list/1999-September/msg00498.html : 意外發現跟您的 code 還蠻像的,該不會是用這範例來改的吧...@_@.. -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 61.64.142.17
文章代碼(AID): #15agBF6l (LinuxDev)
文章代碼(AID): #15agBF6l (LinuxDev)