Я использую, например, этот код, чтобы проверить, может ли пользователь выполнить какое-либо действие.Таким образом, пользователь может выполнять только одно действие каждые 5 секунд.
if((System.currentTimeMillis() - lastTime) > 5000)
{
// Message: Ok, you can do action now.
}else{
// Message: Have to wait 5 seconds to do action.
return;
}
lastTime = System.currentTimeMillis();
Но, как мы все знаем, System.currentTimeMillis()
возвращает длинную позицию, и эта длинная может увеличиваться до тех пор, пока не станет отрицательной ..
Мой код должен работать на сервере, который должен работать более 1 месяца.Поэтому я боюсь, что в какой-то момент System.currentTimeMillis()
вернет отрицательное значение, и мой код всегда скажет пользователю, что ему нужно подождать 5 секунд или наоборот.
У меня очень трудно сконцентрироватьсяна этот кусок кода и исправить его, поэтому я спрашиваю вас, ребята, есть ли у вас совет о том, как решить эту проблему и сделать мой код на 100% безопасным.