⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 test.java.txt

📁 这是一个测试Timer类用法的程序.程序会随机产生10个时间
💻 TXT
字号:
/*
 * Created on 2005-5-5
 * 文件名:	Test.java
 * 作者:		woody
 * 相关描述:	
 * 版本信息:
 */

/*
 *	这是一个测试Timer类用法的程序 
 *	程序会随机产生10个时间, 并在时间到的时候出发Task类对象中的run方法
 */

import java.util.Random;
import java.util.Timer;
import java.util.TimerTask;

/**
 * @author woody
 */
public class Test {

	
	public Test()
	{
		testTimer1();
	}
	protected void testTimer1()
	{
		//这里产生10个任务,随机10个时间
		Random r = new Random();
		for(int i = 1; i <= 10; ++i)
		{
			long time = (long)(r.nextFloat() * 10000);
			System.out.println("Task: id:" + i + " time:" + time);
			Timer timer = new Timer();
			timer.schedule(new Task(timer, i), time);
			
		}
	}
	public static void main(String[] args) {
		Test test = new Test();
	}

	protected void exec()
	{
		System.out.println("exec");
	}
	protected void exec2()
	{
		
	}
	class Task extends TimerTask
	{
		int i;
		Timer timer;
		Task(Timer t)
		{
			timer = t;
		}
		Task(Timer t, int id)
		{
			timer = t;
			i = id;
		}
		public void run()
		{
			System.out.println("Task" + i + " finished");
			timer.cancel();
		}
	}
}

/*
 * 当执行到timer = new Timer() 时 Timer线程就开始执行了
 * 当执行timer = new Timer(true)时 timer线程为daemon线程
 * ,即主线程结束他也结束
 */
/*
 * 我的期望:
 * 		Timer timer = new Timer();
 * 		Task task = new task(timer);
 * 		timer.scheduler(task, date);
 * 		这样就ok了,当task一次后就cancel timer
 */

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -