Considere descarregar a notificação no sistema!
A maneira geral com que as coisas se comunicam com um daemon na moderna área de trabalho GNU / Linux é D-Bus . Para simplificar grosseiramente o que ele faz: O D-Bus permite chamar funções de um processo de "serviço" de daemon. Você poderia facilmente ter apenas uma função refreshConfig()
que recarrega a configuração do arquivo na chamada.
Dito isto, a coisa específica que você está tentando fazer tem uma solução mais voltada para o Ubuntu e o GTK +. Com as GSettings , você cria um esquema de configuração que define os pares chave / valor que você está interessado em armazenar. Depois de fazer isso, você pode colocar uma linha como esta no seu daemon ...
mySettings->connect("changed::setting", onSettingChanged);
E o GObject irá ativar seu daemon e chamar onSettingChanged()
quando qualquer configuração for alterada. Essa função pode chamar uma nova instância de si mesmo e exit(0)
, se desejar. Embora eu não consiga pensar em uma lógica lógica de código, por que você precisa fazer isso.
Aqui está um excelente guia para usar GSettings with Python . Deve ser facilmente traduzível para C ++.