dconf_client_read не читает обновленное значение

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

Нужно ли создавать новый клиент, используя dconf_client_new каждый раз или есть какой-то другой метод, который получит обновленное значение? И если мне нужно каждый раз создавать нового клиента, как мне освободить старый клиент? Там, кажется, нет dconf_client_unref или аналогичный метод доступен.

PS: я пишу демон, поэтому я не могу перезапускать его каждый раз, когда меняю значение.

0 ответов

Другие вопросы по тегам