Я делаю приложение, которое зависит от пользователя, нажимающего клавишу и события, основанные на времени. Методы будут работать в двух обстоятельствах:Как вы выполняете один из двух методов непрерывно, когда они запускаются бесконечно, а один - на основе события нажатия клавиши?
1: Если пользователь нажимает клавишу, приложение печатает foo.
2: Если прошло 3 секунды, то панель печати приложений.
Первый сценарий выполняется независимо от второго, а второй зависит от первого. 3-й таймер должен сбрасываться каждый раз, когда вызывается keypress event
. После выполнения одного из этих двух методов приложение должно вернуться в состояние, в котором приложение ожидает повторного появления одного из этих двух событий.
код может выглядеть следующим
@override
public void onPress(int i){
System.out.print("foo");
}
public void printBar(){
if(timeElapsed > 3){
System.out.print("bar");
}
}
Так что на пресс-конференции должно происходить нормально при нажатии клавиши, но printBar должен работать только через 3 секунды после последнего выполнения последнего нажатия клавиши. Каждое выполнение нажатия клавиши сбросит таймер печати. Благодарим вас за помощь и сообщите мне, могу ли я предоставить лучшую информацию.
Многопоточность с замком. – horatius
Вы отмечаете этот вопрос с помощью [tag: android], но вы слушаете ключевые события нажатия. Для меня это не имеет смысла. Телефоны Android не имеют ключей, не так ли? – Sweeper
Я создаю свою собственную клавиатуру, поэтому ключ относится к клавише клавиатуры. Я не включил эту клавиатуру в описание, потому что я думал, что обобщенный вопрос все еще достиг того, что я просил – Danny2036