`
lijunaccp
  • 浏览: 158991 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

记时器

 
阅读更多
package com.test;

import java.util.Calendar;
import java.util.Timer;
import java.util.TimerTask;
import java.util.concurrent.Executors;
import java.util.concurrent.ScheduledExecutorService;
import java.util.concurrent.TimeUnit;

public class ThreadTest5
{

	/**
	 * @param args
	 */
	public static void main(String[] args)
	{
		timerMethod4();
	}

	private static void timerMethod1()
	{
		Timer timer = new Timer();
		System.out.println(Calendar.getInstance().get(Calendar.SECOND));
		timer.schedule(new TimerTask(){
			@Override
			public void run()
			{
				System.out.println(Calendar.getInstance().get(Calendar.SECOND));
				System.out.println("running");
			}
		}, 5000, 2000);
	}
	
	private static void timerMethod2()
	{
		final Timer timer = new Timer();
		System.out.println(Calendar.getInstance().get(Calendar.SECOND));
		class MyTimerTask extends TimerTask{
			@Override
			public void run()
			{
				System.out.println(Calendar.getInstance().get(Calendar.SECOND));
				System.out.println("running");
				timer.schedule(new MyTimerTask(), 3000);
			}
		};
		timer.schedule(new MyTimerTask(), 2000);
		
	}
	
	private static int i = 0;
	private static void timerMethod3()
	{
		final Timer timer = new Timer();
		System.out.println(Calendar.getInstance().get(Calendar.SECOND));
		class MyTimerTask extends TimerTask{
			@Override
			public void run()
			{
				System.out.println(Calendar.getInstance().get(Calendar.SECOND));
				System.out.println("running");
				if(i++ % 2 == 0){
					timer.schedule(new MyTimerTask(), 3000);
				}else{
					timer.schedule(new MyTimerTask(), 2000);
				}
			}
		};
		timer.schedule(new MyTimerTask(), 2000);
		
	}
	
	private static void timerMethod4()
	{
		final ScheduledExecutorService pool = Executors.newScheduledThreadPool(1);
		System.out.println(Calendar.getInstance().get(Calendar.SECOND));
		class MyTask implements Runnable{
			public void run()
			{
				System.out.println(Calendar.getInstance().get(Calendar.SECOND));
				System.out.println("running");
				if(i++ % 2 == 0){
					pool.schedule(new MyTask(), 3, TimeUnit.SECONDS);
				}else{
					pool.schedule(new MyTask(), 2, TimeUnit.SECONDS);
				}
			}
		}
		pool.schedule(new MyTask(), 2, TimeUnit.SECONDS);
		
	}

}

分享到:
评论

相关推荐

    辩论赛计时器

    "辩论赛计时器"是一款专为辩论比赛设计的计时工具,其主要功能是帮助组织者精确控制比赛时间,确保各个环节按时进行。这款计时器是基于Delphi编程语言开发的,Delphi是一种强大的面向对象的编程环境,以其高效、易用...

    计时器.exe 计时器.exe

    计时器.exe计时器.exe计时器.exe计时器.exe计时器.exe计时器.exe计时器.exe计时器.exe计时器.exe计时器.exe计时器.exe计时器.exe计时器.exe计时器.exe计时器.exe计时器.exe计时器.exe计时器.exe计时器.exe计时器.exe...

    希沃白板计时器提取版 ,集成倒计时和计时器两大功能,支持全屏

    在日常工作或学习中,我们经常需要掌握和计算时间,这时计时器工具就显得尤为重要。许多朋友发现希沃软件中的计时功能非常方便实用。今天,我为大家介绍希沃计时器工具,这是从希沃软件中单独提取出来的功能,提供了...

    windows桌面计时器

    Windows桌面计时器是Windows操作系统中一种实用的工具,它可以帮助用户进行时间管理,尤其适合那些需要精确控制工作或学习时间的人。计时器可以在指定的时间结束后发出通知,提醒用户某个任务已经完成或者需要切换到...

    多功能计时器-倒计时器

    在IT行业中,计时器和倒计时器是常见的实用工具,尤其在组织各类活动或比赛中,它们扮演着至关重要的角色。"多功能计时器-倒计时器"这款应用程序,正如其标题所示,旨在提供一种高效且灵活的计时解决方案,适应多种...

    labview实现计时器

    本篇文章将深入探讨如何在LabVIEW中实现计时器,并涉及计时器的复位功能。 首先,我们来看LabVIEW中的基本计时器类型。有两种主要的计时器:定时器(Timer)和延时器(Delay)。定时器在达到预设时间后触发一个事件...

    计时器(演讲赛计时专用)

    【计时器(演讲赛计时专用)】是一款基于VB编程语言开发的实用工具,专为演讲比赛或竞选活动设计,旨在提供一个免费且高效的计时解决方案。在组织此类活动时,确保每位选手的演讲时间公正准确至关重要,而这款计时器...

    组态王计时器控件及使用文档

    组态王计时器控件是一款专为工控软件设计的组件,用于实现自动化系统中的时间控制功能。在工业自动化领域,计时器是不可或缺的一部分,它能够帮助工程师精确地控制设备运行的时间,从而实现定时启动、定时停止、周期...

    计时器-子叶计时器-倒计时会议提醒功能

    子叶计时器是一款专为会议提醒和倒计时需求设计的应用,它的核心特性在于其简洁的操作界面和高效的功能实现。这款计时器不仅没有烦人的广告干扰,而且设置过程非常直观,使得用户能够快速上手,进行精准的时间管理。...

    基于51单片机的篮球计时器

    篮球计时器是一种常见的计时器,可以用于篮球比赛过程中的计时和报告。本篇文章将介绍基于51单片机的篮球计时器设计。 有代码和仿真 设计所需物品: - 51单片机开发板 - 8位LED数码管模块 - 蜂鸣器模块 - 按键模块...

    PPT演讲倒计时器

    《PPT演讲倒计时器:提升演讲效率与专业性的必备工具》 在现代商务、教育及各种公开演讲场合,时间管理是至关重要的。PPT演讲倒计时器是一款专为演讲者设计的实用工具,它能帮助演讲者精确掌控时间,确保在规定的...

    组态王秒计时器编程方法

    4. 控制计时器:可以设计按钮或开关来控制计时器的启停,通过脚本实现按钮点击事件,调用计时器的启动或停止函数。 五、实例详解 在提供的压缩包文件"组态王秒计时器制做"中,可能包含了一个实际的秒计时器制作示例...

    PROTEUS 篮球比赛计时器

    "PROTEUS 篮球比赛计时器" 是一款基于PROTEUS软件平台设计的模拟硬件系统,主要用于篮球比赛中的计时和计分功能。标题表明了该系统的应用领域和核心功能,即为篮球比赛提供精准的时间管理和得分显示。 【描述详解】...

    1-99分钟倒计时计数计时器60进制计数器倒计时定时器等6个计时器Multisim仿真实例

    在这个“1-99分钟倒计时计数计时器60进制计数器倒计时定时器等6个计时器Multisim仿真实例”中,我们将探讨几个关键的计时器设计概念和技术。 首先,让我们理解什么是倒计时计时器。倒计时计时器是一种设备或电路,...

    Android简单的计时器源码

    在Android开发中,计时器(Timer)是一个非常常见的组件,用于实现各种定时任务,比如倒计时、游戏计时、动画间隔等。本资源提供了一个简单的Android计时器源码,包含了开始、暂停和重置功能,是学习Android计时器...

    反应计时器设计+毫秒计时器+延时计数器模块(Verilog)

    手眼协调是一种眼睛和手一起工作执行一项任务的能力,反应计时器电路能够测量一个 人在看见一种视觉刺激后,手的响应有多快。 实验要求: 1. 基本部分 (1)电路有三个输入按键:clear,start 和 stop,使用一个 ...

    倒计时器(悬浮窗口)

    倒计时器是一种实用工具,尤其在需要精确时间管理的场合,如PPT演示、比赛、互动环节或会议中,它的存在能确保活动按计划进行。"倒计时器(悬浮窗口)"这款软件设计独特,它能在电脑屏幕上以悬浮窗口的形式存在,...

    数字计时器(eda)

    【数字计时器(EDA)】是电子设计自动化(EDA)领域的一个常见实践项目,它主要涉及硬件描述语言VHDL的设计与应用。VHDL(Very High Speed Integrated Circuit Hardware Description Language)是一种用于数字系统...

    html5 LED计时器_LED倒计时器样式特效

    在网页设计和开发中,这种计时器常用于创建吸引用户的动态时间显示,比如活动倒计时、考试倒计时等场景。LED计时器因其独特的视觉效果,能引起用户注意并提升用户体验。 LED计时器的核心在于JavaScript,它通过控制...

    电话通话计时器PCB

    电话通话计时器PCB是一种专门用于记录电话通话时间的硬件设计,主要应用于需要精确计费或管理通话时间的场景。在过去的通信技术中,这种设备尤为重要,因为当时的电话服务通常按照通话时间来收费。PCB(Printed ...

Global site tag (gtag.js) - Google Analytics