Java 时间延迟

标签 java timer

我在使用以下代码时遇到问题。

//Send Creation email
ListServDAO.sendCreateEmail(orgId, full, request.getSession().getServletContext());
//Force a 1 minute pause
       Timer timer = new Timer();
       timer.schedule(new TimerTask() {
            public void run() {
                //Send add members email
                ListServDAO.sendAddMembersEmail(orgId, request.getSession().getServletContext());
                }
            }, 0, 60 * 1000);

sendAddMembersEmail 函数在调用 sendCreateEmail 函数后不会等待 1 分钟即可发送。我不知道为什么即使在阅读了 java API 后它也不等待。我不想使用 Thread.sleep 方法,因为我希望用户能够在等待电子邮件发送时使用该应用程序。

最佳答案

您打算重复发送电子邮件吗?如果不是,为什么要使用需要 2 个 long 的方法(即“每 <period> 毫秒重复运行此任务”)?使用schedule(task, delay)方法(并使用非零延迟)。

关于Java 时间延迟,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10707361/

相关文章:

Java while循环有一定的时间

javascript - 如何让 javascript 计时器在不查看选项卡/窗口时停止

php - 将数据添加到数据库,一定时间后自动删除?

java - 双引号内的内容不会打印到 System.out

java - Java Swing 播放 .avi 视频时出现 fobs4jmf.dll 错误

Java SHA1 输出与 Linux 的 sha1sum 命令不同

linux - 使用TSC作为时钟源是否提高定时器和调度粒度?

java - 将 WAR 添加到 Java 的类路径

java - 当我不能时,Maven 正在执行什么样的魔法来运行这个项目?

c# - 如何制作一个准确的十进制定时器?