Java: Проверка, если ПК неактивен

Это - довольно хитрый вопрос, поскольку я не нашел информации онлайн. В основном я хочу знать, как проверить, неактивен ли компьютер в Java. Я хочу, чтобы программа только работала, если компьютер находится в активном употреблении, но если это неактивно затем к нет.

Единственным путем я могу думать о выполнении, это сцепляется в мышь/клавиатуру и имеет таймер.

MSN Messenger имеет это "далеко" функция, я желаю чего-то подобного этому.

6
задан skaffman 22 March 2012 в 10:59
поделиться

3 ответа

Ничто в платформенно-независимой JRE не даст ответа на этот вопрос. Возможно, вы сможете догадаться, измерив время вычисления, но это не будет надежно. На конкретных платформах могут существовать API от производителя, которые могут помочь вам.

0
ответ дан 17 December 2019 в 07:01
поделиться

Java не имеет возможности взаимодействовать с клавиатурой или мышью на системном уровне вне вашего приложения.

При этом есть несколько способов сделать это в Windows . Самый простой, вероятно, - это настроить JNI и опрос

GetLastInputInfo

на предмет активности клавиатуры и мыши.

2
ответ дан 17 December 2019 в 07:01
поделиться

1) Создайте новую тему.

2) Дайте ему сверхнизкий приоритет (самый низкий из возможных)

3) Каждую секунду или две пусть поток выполняет какую-нибудь простую задачу. Если он супербыстрый, по крайней мере, 1 процессор простаивает. Если это происходит медленно, значит, по крайней мере, одно ядро ​​не простаивает.

Или

Просто запустите вашу программу с низким приоритетом. Это позволит ОС справиться с тем, чтобы другие программы запускали вашу программу.

0
ответ дан 17 December 2019 в 07:01
поделиться
Другие вопросы по тегам:

Похожие вопросы: