我有一种情况,我必须检查数据库中的值aValue。 如果aValue可用,则执行aValueProcess()。 如果该值不可用,我只能等待30分钟,并且需要每隔10分钟(3次)检查数据库的值。 如果超过30分钟退出程序。
任何人都可以为我提供最佳方法的逻辑。任何帮助表示赞赏。
答案 0 :(得分:1)
这是我散列的东西,至少应该告诉你逻辑(注意我主要做c#所以你可能不得不改变功能。
val aValue = aValueProcess();
int attempts = 0;
//Wait 10 minutes and try again if value is null and we have not tried
//3 times (30 minutes of trying)
while(aValue == null && attempts < 3)
{
thread.sleep(600000); //10 minutes in milliseconds
attempts += 1;
aValue = aValueProcess();
}