Как перехватить событие приостановки в Qt Linux

Работаю в Linux и использую Qt для разработки моего приложения. Мне нужно сохранить состояние моего приложения, когда оно приостанавливается, поэтому, когда оно возобновится, я смогу выполнить задачу соответствующим образом. Пожалуйста, помогите мне, как перехватить событие приостановки / возобновления в Linux, используя Qt.

Пытался найти решение в сети, но не нашел решения. Для захвата события возобновления мы использовали системную метку времени, и она работает, но не знала, как захватить событие приостановки.

1

Решение

Нет способа определить, когда компьютер переходит в спящий режим или в режим гибернации. Но есть несколько зависимых от платформы способов сделать это.

В Linux вы можете поместить следующий скрипт в /etc/pm/sleep.d, который выполняет программу с аргументами. Вы можете запустить программу и уведомить ваше основное приложение каким-либо образом:

#!/bin/bash
case $1 in
suspend)
#suspending to RAM
/Path/to/Program/executable Sleeping
;;
resume)
#resume from suspend
sleep 3
/Path/to/Program/executable Woken
;;
esac
1

Другие решения


По вопросам рекламы [email protected]