2015-06-14 80 views
2

我有與系統v庫(信號量,消息隊列)和多個進程conformed應用程序(機場併發模擬)。將gtk圖形添加到現有控制檯應用程序 - 共享內存?

我不允許使用線程,這就是爲什麼我有一個進程線程和多個「飛機」進程。

我想添加一些圖形來顯示與GTK(與開羅)庫機場的流量。

如何添加圖形?當我嘗試將它添加到機場進程時,gtk_main會阻止整個應用程序。我想過創建另一個進程並將圖形添加到共享內存中,但我已經讀過,它不會起作用。

什麼是最簡單/最好的選擇?

非常感謝!

回答

0

這聽起來像你應該做一個單獨的GUI過程,其他進程可以發送消息。做到這一點的一種方法是讓GUI進程導出其他進程可以連接到的DBus interface。這樣,當你的GUI進程接收到來自另一個進程的消息時,你的GTK主循環將發出一個信號,你可以安排一個信號處理器來處理它並相應地更新GUI。

相關問題