dconf_client_read не читает обновленное значение
Я использую Ubuntu 18.04 (оболочка GNOME) и пытаюсь использовать dconf в программе на Си. Проблема в том, что когда я запускаю программу и читаю значение, используя dconf_client_read
, он читает правильное значение. Но если я изменю значение с помощью dconf-editor
в то время как программа работает, при следующем чтении она читает старое значение. Если я перезапущу программу, она снова получит правильное значение. Я тоже пробовал звонить dconf_client_sync
но это не имело никакого эффекта.
Нужно ли создавать новый клиент, используя dconf_client_new
каждый раз или есть какой-то другой метод, который получит обновленное значение? И если мне нужно каждый раз создавать нового клиента, как мне освободить старый клиент? Там, кажется, нет dconf_client_unref
или аналогичный метод доступен.
PS: я пишу демон, поэтому я не могу перезапускать его каждый раз, когда меняю значение.