当前位置:  编程技术>java/j2ee

java当中的定时器的4种使用方式

    来源: 互联网  发布时间:2014-10-29

    本文导语:  对于开发游戏项目的同胞来说,Timer 这个东西肯定不会陌生,今天对以前自己经常使用的定时进行了一番小小的总结!没有写具体实现的原理,只是列举出了其中的四种比较常见的使用方法,相对而言,所以只要按照其所列举...

对于开发游戏项目的同胞来说,Timer 这个东西肯定不会陌生,今天对以前自己经常使用的定时进行了一番小小的总结!没有写具体实现的原理,只是列举出了其中的四种比较常见的使用方法,相对而言,所以只要按照其所列举的例子仿照即可!

代码如下:

import java.util.Calendar;
import java.util.Date;
import java.util.Timer;
import java.util.TimerTask;

public class TimeTest {
    public static void main(String[] args) {
        timer1();
        //timer2();
        //timer3();
        //timer4();
    }

    // 第一种方法:设定指定任务task在指定时间time执行 schedule(TimerTask task, Date time)
    public static void timer1() {
        Timer timer = new Timer();
        timer.schedule(new TimerTask() {
            public void run() {
                System.out.println("-------设定要指定任务--------");
            }
        }, 2000);// 设定指定的时间time,此处为2000毫秒
    }

    // 第二种方法:设定指定任务task在指定延迟delay后进行固定延迟peroid的执行
    // schedule(TimerTask task, long delay, long period)
    public static void timer2() {
        Timer timer = new Timer();
        timer.schedule(new TimerTask() {
            public void run() {
                System.out.println("-------设定要指定任务--------");
            }
        }, 1000, 5000);
    }

    // 第三种方法:设定指定任务task在指定延迟delay后进行固定频率peroid的执行。
    // scheduleAtFixedRate(TimerTask task, long delay, long period)
    public static void timer3() {
        Timer timer = new Timer();
        timer.scheduleAtFixedRate(new TimerTask() {
            public void run() {
                System.out.println("-------设定要指定任务--------");
            }
        }, 1000, 2000);
    }

    // 第四种方法:安排指定的任务task在指定的时间firstTime开始进行重复的固定速率period执行.
    // Timer.scheduleAtFixedRate(TimerTask task,Date firstTime,long period)
    public static void timer4() {
        Calendar calendar = Calendar.getInstance();
        calendar.set(Calendar.HOUR_OF_DAY, 12); // 控制时
        calendar.set(Calendar.MINUTE, 0);       // 控制分
        calendar.set(Calendar.SECOND, 0);       // 控制秒

        Date time = calendar.getTime();         // 得出执行任务的时间,此处为今天的12:00:00

        Timer timer = new Timer();
        timer.scheduleAtFixedRate(new TimerTask() {
            public void run() {
                System.out.println("-------设定要指定任务--------");
            }
        }, time, 1000 * 60 * 60 * 24);// 这里设定将延时每天固定执行
    }
}


    
 
 

您可能感兴趣的文章:

  • java中用什么实现定时器功能?
  • java使用TimerTask定时器获取指定网络数据
  • 我想在java程序中加一个定时器
  • 请问JAVA的定时器如何设置
  • 听说java有一种数据库连接池的方式,效率比使用jdbc驱动程序高。不知是否真的这样?具体方式怎么实现?
  • 高手帮忙:如何用java读取数据(从ftp服务器上一个文本文件)但不采用get的方式直接读取,打印数据内容(web方式)
  • Java程序能否以后台方式运行?
  • 请问如何通过telnet的方式启动服务器(solaris)上的用.sh角本方式启动java写的应用程序,在退出telnet时服务器上的应用程序不会退出?
  • 谁帮忙把Java Web Start的快捷方式发给我?
  • 在java中如果想将一个文件以二进制的方式打开,应如何做?
  • java中如何使参数传递按传"引用"方式进行?
  • MM求助:怎样多线程下载http://java.sun.com上的东东? 用http方式,谢谢了.
  • java中读取.txt和读取.ini文件的方式和命令是否一样
  • Java Map的几种循环方式总结
  • 在JBuilder 5.0中,我打开一个单独的java文件,怎么编译和运行他?用命令行方式是可以的
  • java或者是jsp中处理字符串、时间等的函数在那里可以查到资料?或者他们都是采用对象的方式?那么资料在那里可以查到?
  • 高手不屑,菜鸟很急的问题。除了用dos命令,有更好的方式运行java吗?
  • 浅析java中Integer传参方式的问题
  • 在Java swing中如何将所画的图案以文件的方式保存起来.
  • 现在java开发中流行通过什么方式实现对数据库操作?就好像Visual Stadio通过ADO访问数据库。
  • java实现voctor按指定方式排序示例分享
  • java的四舍五入问题(1.15是1.2;1.45就是1.4?)真是搞不懂,我用的是DecimalFormat的方式(在线等)
  • olap工具软件,主体开发工作已经完成,欠缺web方式交互式的分析数据功能,欲通过java来完成,寻求合作
  • java单例模式4种使用方式分享
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • 使用java jdk中的LinkedHashMap实现简单的LRU算法
  • MySocketServer.java 使用或覆盖一个不鼓励使用的API???
  • java将类序列化并存储到mysql(使用hibernate)
  • JAVA中不赞成使用(Deprecated)的方法是否可以使用
  • 各位使用过JAVA的朋友们!JAVA好用吗?它有向VC那样的集成开发环境吗?
  • java 可以使用 可是javac不可以使用。老兄帮帮忙
  • 哪位知道如何用JAVA进行图形文件的缩放? 是使用JAVA2D 或是有第三方的软件?
  • java堆栈类使用实例(java中stack的使用方法)
  • env查看环境变量,JAVA_HOME明明在里面,但使用nutch时还是提示JAVA_HOME not set?
  • 如何使用linux下的java编译器????
  • 如何使用java这个命令?
  • Java程序能否以后台方式运行? iis7站长之家
  • linux 远程上使用java
  • UNIX下使用java运行class的问题
  • java:sun公司的联机帮助如何使用?
  • 请教如何使用Java编写的Applet程序关闭浏览器??
  • 怎么使用 JAVA 的包呀???
  • 针对使用java进行硬件编程
  • 使用editplus编写java如何编译成字节码文件,如何解释
  • 谁能告诉我哪里能找到java包内部类及方法使用介绍
  • 使用java时间的调查,谢谢大家
  • java命名空间java.sql类types的类成员方法: java_object定义及介绍
  • 我想学JAVA ,是买THINK IN JAVA 还是JAVA2核心技术:卷1 好???
  • java命名空间java.awt.datatransfer类dataflavor的类成员方法: imageflavor定义及介绍
  • 请问Java高手,Java的优势在那里??,Java主要适合于开发哪类应用程序
  • java命名空间java.lang.management类managementfactory的类成员方法: getcompilationmxbean定义及介绍
  • 如何将java.util.Date转化为java.sql.Date?数据库中Date类型对应于java的哪个Date呢
  • java命名空间java.lang.management接口runtimemxbean的类成员方法: getlibrarypath定义及介绍
  • 谁有电子版的《Java编程思想第二版(Thinking in java second)》和《Java2编程详解(special edition java2)》?得到给分
  • java命名空间java.lang.management接口runtimemxbean的类成员方法: getstarttime定义及介绍
  • 本人想学java,请问java程序员的待遇如何,和java主要有几个比较强的方向


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3