2015-12-21 3 views
2

У меня есть проект App Indicator, который создает динамически построенное меню запуска.Как освободить ссылку приложения, созданного с помощью приложения app_indicator_new в раздвоенном ребенке?

В меню запуска запускаются приложения fork/exec. Мне нужно уничтожить индикатор приложения в раздвоенном ребенке или каким-то образом заставить его освободить все его дескрипторы/мьютексы или что-то еще. Как закрыть/удалить все эти ссылки из раздвоенного дочернего процесса?

Причина в том, что меню заходит после завершения родительского процесса AppIndicator. Должен быть способ предотвратить это.

ответ

1

Кажется, что это сделал трюк:

AppIndicator * appind = app_indicator_new(/*params*/) 

// ... use appind 

fork(); 
g_object_unref(G_OBJECT(appind)); // remove reference 
execlp(/*params*/); 
Смежные вопросы