Я хочу создать программу, которая будет отображать всплывающее окно в определенное время в будущем, например.5:00 сегодня вечером.По сути, программа представляет собой систему напоминаний / уведомлений о встречах, собраниях и т. Д.
Моим первым инстинктом было создание своего рода «Clock Listener», который проверял бы время компьютера каждую минуту или около того и проверял бы currentTime== alarmTime.Однако я не знаю, требует ли это слишком много ресурсов или это просто плохая практика, когда ваша программа постоянно делает подобные вещи.Кроме того, для того, чтобы будильник был точным, я думаю, что нужно проверять каждую секунду, а не каждую минуту (поскольку, если он не проверяет секунды и сработает в 5: 00: xx, он может сработать в 5: 00: 59, что может быть слишком поздно для некоторых людей).Слишком много проверяет часы каждую секунду?
Моя вторая мысль состояла в том, что когда программа запускается, подсчитайте, сколько времени пройдет, пока не сработает будильник (скажем, через пять часов).Затем подождите пять часов, а затем подайте сигнал тревоги.Но потом я подумал, что маловероятно, что пользователь сможет изменить время компьютера, и тогда сигнал тревоги сработает в неподходящее время.Так что это на самом деле не работает.
Я видел некоторые решения, использующие потоки, но я пока не знаком с ними, поэтому я бы не стал их использовать.
IЯ склоняюсь к первому решению, но я хочу убедиться, что оно эффективно и не будет тормозить другие программы.Возможно, я обдумываю это, и проверка часов - тривиальная операция, но я просто хотел убедиться, что я не делаю ничего плохого.