我想根据用户通过单选按钮选择的分钟数(1分钟、15分钟、30分钟、45分钟等)将信息附加到文件中。对于每个单选按钮,switch语句中都有case。我发现很难定期、连续地更新文件,有人知道如何根据选择的分钟来更新吗。time_int是当前时间,update_point是需要更新文件的下一个间隔点?因此,请帮助使用UPDATEFILE()方法。
public void radioStartTime(int t) {
time_int = System.currentTimeMillis(); //time radio button is clicked, clock the time on click
System.out.println(sdf.format(time_int));
/* a case/situation for different radio button selected*/
switch (t) {
case 1:
update_point = time_int + (1*60000);
System.out.println(sdf.format(update_point));
UPDATEFILE????(1);
break;
.....
您可以考虑的三种方法:
-
如果包含新库是免费的,您可以查看Quartz调度器。它可以处理许多复杂的调度器用例。
-
您也可以检查java.util.Timer。它可以(从javadoc:)调度任务,以便将来在后台线程中执行。任务可以安排为一次性执行,也可以定期重复执行。后一部分正是你所需要的。
-
编写您自己的线程和睡眠/等待机制来实现您的目标。
无论如何,我不认为递归是解决调度问题的正确方法。