如何使用System.currentTimeMillis()管理剩余的时间

Rea*_*cen 2 java time milliseconds

我使用例如此代码来检查用户是否可以执行某些操作.因此,用户每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();
Run Code Online (Sandbox Code Playgroud)

但是众所周知,System.currentTimeMillis()回报很长,而且长期可以继续增长,直到它变成否定为止.

我的代码应该在需要超过1个月正常运行时间的服务器上运行.因此,我担心在某些时候System.currentTimeMillis()会返回一个否定值,我的代码将始终告诉用户他需要等待5秒或相反.

我真的很难专注于这段代码并修复它,所以我问你们,如果你有一个关于如何解决这个问题并使我的代码100%安全的提示.

And*_*rew 7

别担心.

你知道这是什么问题吗?

需要在Sun Aug 17 03:12:55 GMT-04:00 292278994更新它的.

  • 这将是`Chuck Norris`;) (2认同)