package cn.threadtest.thread;

import java.util.Date;
import java.util.Timer;
import java.util.TimerTask; public class TraditionalTimerTest { /**
* @param args
*/ //每隔2秒,4秒炸方法1
// static int count = 0; //每隔2秒,4秒炸方法2
static class MyTimerTask1 extends TimerTask { public void run() { System.out.println("bombing!");
new Timer().schedule(new MyTimerTask2(), 2000); }
} static class MyTimerTask2 extends TimerTask { public void run() { System.out.println("bombing!");
new Timer().schedule(new MyTimerTask1(), 4000); }
}
//每隔2秒,4秒炸方法2结束 public static void main(String[] args) { //1第10秒和第13秒炸
// new Timer().schedule(new TimerTask() {
//
// public void run() {
// // TODO Auto-generated method stub
// System.out.println("bombing!");
// }
// }, 10000,3000); // new Timer().schedule(new TimerTask() {
//
// public void run() {
// // TODO Auto-generated method stub
// System.out.println("bombing!");
// new Timer().schedule(/*new TimerTask(){
// public void run() {
// System.out.println("bombing2!");
// };
// }*/this, 2000);
// }
// }, 2000); // //每隔2秒炸开始
// class MyTimerTask extends TimerTask {
//
// public void run() {
// // TODO Auto-generated method stub
// System.out.println("bombing!");
// new Timer().schedule(/*new TimerTask(){
// public void run() {
// System.out.println("bombing2!");
// };
// }*/new MyTimerTask(), 2000);
//
// }
// }
//new Timer().schedule(new MyTimerTask(), 2000);
//每隔2秒炸结束
// //每隔2秒,4秒炸开始方法1
// class MyTimerTask extends TimerTask {
//
//
// public void run() {
//
// count=(count+1)%2;
//
// // TODO Auto-generated method stub
// System.out.println("bombing!");
// new Timer().schedule(/*new TimerTask(){
// public void run() {
// System.out.println("bombing2!");
// };
// }*/new MyTimerTask(), 2000+2000*count);
//
// }
// }
// new Timer().schedule(new MyTimerTask(), 2000);
//每隔2秒,4秒炸方法1结束 //每隔2秒,4秒炸方法2 new Timer().schedule(new MyTimerTask2(), 2000); //每隔2秒,4秒炸方法2结束 while(true){
System.out.println(new Date().getSeconds());
try {
Thread.sleep(1000);
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
} } }

java定时器demo的更多相关文章

  1. java定时器和多线程实践记录

    这几天因为需要测试mongodb读写分离的问题,因此写了个定时查询程序,并且用到了多线程,以达到定时启动多个线程查询数据库的效果,下边代码记录备忘: package timmer; import ja ...

  2. java定时器,Spring定时器和Quartz定时器

    一.java定时器的应用 其实java很早就有解决定时器任务的方法了,java提供了了类java.util.TimerTask类基于线程的方式来实现定时任务的操作,然后再提供java.util.Tim ...

  3. Java定时器:Timer

    项目中往往会遇到需要定时的任务,例如订单,当用户在某个规定时间内没有操作订单时,订单状态将会发生改变. 那么在这种情况下,我们会用到定时器. 举例: import java.util.Timer; / ...

  4. Java定时器应用

    在Java多线程中,有的时候,我们需要按照指定间隔时间来执行一些任务,这时,我们就要用到定时器.我们在这里以Java中的Timer定时器为例,演示定时器的应用. 请看下述代码: import java ...

  5. java定时器实现总结

    前言:Java定时器目前主要有3种实现方式:JDK组件,Spring Task,Quartz框架. 1. JDK组件(1) java.util.TimerTask MyTimerTask.java: ...

  6. 微信公众号Java接入demo

    微信公众号Java接入demo 前不久买了一台服务,本来是用来当梯子用的,后来买了一个域名搭了一个博客网站,后来不怎么在上面写博客一直闲着,最近申请了一个微信公众号就想着弄点什么玩玩.周末没事就鼓捣了 ...

  7. Java定时器TimeTask

    package com.alan.timer; import java.util.Calendar;import java.util.Date;import java.util.Timer;impor ...

  8. Java定时器Timer

    Java定时器Timer在JDK库中,Timer类主要负责计划任务的功能,也就是在指定的时开始执行某一个任务.Timer类的主要作用就是设置计划任务,但封装任务的类却是TimerTask类,执行计划任 ...

  9. Kafka2.4发布——新特性介绍(附Java Api Demo代码)

    新功能 允许消费者从最近的副本进行获取 为 Consumer Rebalance Protocol 增加对增量协同重新均衡(incremental cooperative rebalancing)的支 ...

随机推荐

  1. Deep Dive into Neo4j 3.5 Full Text Search

    In this blog we will go over the Full Text Search capabilities available in the latest major release ...

  2. 使用CSS为图片添加更多趣味的5种方法

    使用Photoshop为每个图片添加某种样式虽然可行,但会是相当乏味且困难的长久工作.下面要介绍的CSS技巧将帮助你从痛苦中解脱出来! 阴影效果 通过使用带有一些padding之的背景图来添加阴影效果 ...

  3. AtCoder Beginner Contest 132 E - Hopscotch Addict

    bfs 位置+状态 just need to calculate min value(only it is useful), so O(1*x) 挺有趣的一道题... #include <cst ...

  4. Batch - Windows Batch 常用命令

    比较符号(不能用 < , >) The reason operators like > are not used is because they have special meani ...

  5. java 数组常见操作

    1.遍历  依次访问数组中的每个元素 public class ArrayDemo04 { public static void main(String[] args) { int[] arr = { ...

  6. Perl 数组

    Perl 数组 Perl 数组一个是存储标量值的列表变量,变量可以是不同类型. 数组变量以 @ 开头.访问数组元素使用 $ + 变量名称 + [索引值] 格式来读取,实例如下: 实例 #!/usr/b ...

  7. Ros node启动与关闭

    1. ros运行单位: Ros程序运行的单位是ros node. 2. ros 节点的启动: (1)初始化ros节点:通过调用ros::init()接口实现:可以通过参数指定默认节点名字,之所以是默认 ...

  8. LUOGU P2290 [HNOI2004]树的计数(组合数,prufer序)

    传送门 解题思路 \(prufer\)序,就是所有的不同的无根树,都可以转化为唯一的序列.做法就是每次从度数为\(1\)的点中选出一个字典序最小的,把这个点删掉,并把这个点相连的节点加入序列,直到只剩 ...

  9. Block的Retain Cycle的解决方法

    一个使用Block语法的实例变量,在引用另一个实例变量的时候,经常会引起retain cycle.这个问题在使ASIHTTPRequest的block语法的时候会时不时的碰到.这个问题困扰了我这个小白 ...

  10. VS2010-MFC(对话框:属性页对话框及相关类的介绍)

    转自:http://www.jizhuomi.com/software/164.html 一 属性页对话框的分类 属性页对话框想必大家并不陌生,XP系统中桌面右键点属性,弹出的就是属性页对话框,它通过 ...