Это мой личный список убийств:
kill <pid_number> example: kill 8888 effect: kill application with PID 8888. kill -9 <pid_number> example: kill -9 8888 effect: тот же, что и выше, но больше экстремальным и сильным. killall <application_name> пример killall firefox effect: убить приложение или экземпляр приложения с именем firefox. Вам не обязательно знать номер PID, и это мой самый любимый. Эффект kill -9 -1: убить все процессы, включая X Server, чтобы вы могли вернуться к диспетчеру дисплея (LightDM, GDM или KDM). Другим именем этой команды является relogin. И эта команда является подстановкой для нажатия кнопки «Выход». Эффект Alt+Printscreen+REISUB: перезапуск; аналогично Ctrl + Alt + Del в Windows. Очень полезно избегать повреждения жесткого диска. Эффект Alt+Printscreen+REISUO: принудительное выключение, например Ctrl + Alt + Del, но выключение, а не перезапуск. Только отличаться 1 последний символ (O и B). Эффект xkill: измените указатель на череп. Если вы нажмете на него графические интерфейсы, то окно обязательно умрет.Вы можете видеть PID процесса с помощью команд ps aux, top, htop или графически с помощью системного монитора GNOME.
. Общий способ общения с демоном в современном рабочем столе GNU / Linux - D-Bus. Чтобы значительно упростить то, что он делает: D-Bus позволяет вам вызывать функции из процесса «сервис». Вы легко могли бы использовать функцию refreshConfig(), которая перезагружает конфигурацию из файла при вызове.
Тем не менее, конкретная вещь, которую вы пытаетесь сделать, имеет более уместное решение для Ubuntu и GTK +. С D-Bus вы создаете схему конфигурации, которая определяет пары ключ / значение, которые вы хотите хранить. Поступая таким образом, вы можете поместить в демона что-то подобное ...
mySettings->connect("changed::setting", onSettingChanged);
И GObject разбудит вашего демона и вызовет onSettingChanged() при изменении любой конфигурации. Эта функция может вызывать новый экземпляр себя и exit(0), если хотите. Хотя я не могу думать о логической логике, почему вам нужно это делать.
Вот отличный справочник по использованию GSettings с Python. Он должен быть легко переводим на C ++.