`
小张三
  • 浏览: 67808 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

Java排程应用例子

阅读更多

实现定时执行指定程序的功能:

1.使用Timer和TimerTask

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

public class Test {
	public static void main(String[] args) {
		Timer timer = new Timer();
		timer.schedule(new Task(), 1000, 1000);
	}
	
	static class Task extends TimerTask {
		@Override
		public void run() {
			System.out.println("The timer task is running!");
		}
	}
}

 2.使用java.util.concurrent包中的类

import static java.util.concurrent.TimeUnit.SECONDS;
import java.util.concurrent.Executors;
import java.util.concurrent.ScheduledExecutorService;
import java.util.concurrent.ScheduledFuture;

public class Test {
	public static void main(String[] args) {
		final ScheduledExecutorService scheduler = Executors
				.newScheduledThreadPool(2);
		final Runnable beeper = new Runnable() {
			public void run() {
				System.out.println("The scheduler task is running!");
			}
		};

		//1秒后执行,每1秒执行一次
		final ScheduledFuture<?> beeperHandler = scheduler.scheduleAtFixedRate(
                                beeper, 1, 1, SECONDS);
                 //2秒后执行,执行完成后间隔5秒在执行下一次
                final ScheduledFuture<?> beeperHandler2 = scheduler.scheduleWithFixedDelay(
                                 beeper, 2, 5, SECONDS);
        }
}

   以上例子2中的定时与延时执行功能有些类似于Javascript的setInterval和setTimeout

在例子2中加入如下代码,可在指定30秒后终止排程

scheduler.schedule(new Runnable() {
			public void run() {
				beeperHandler.cancel(true);
				scheduler.shutdown();
			}
		}, 30, SECONDS);
分享到:
评论

相关推荐

    Spring排程(Scheduling)技术

    Spring 排程(Scheduling)技术是Spring框架中用于实现定时任务的重要功能,它允许开发者在应用程序中安排任务定期执行,以满足各种自动化需求,如数据同步、日志清理、定时报告生成等。排程技术的核心在于管理和...

    quartz web 排程

    在"quartz web 排程"的例子中,我们可以看到它是一个简化版的定时任务实现,便于快速应用到自己的项目中。你只需关注execute方法,并在其中添加自己的业务逻辑,Quartz会按照设定的调度规则自动执行这个方法。 1. *...

    scheduler-android:行动Android排程器应用程式

    在“scheduler-android”项目中,我们看到一个专门为Android设备设计的排程器应用,它利用了Java语言的优势来实现高效、可靠的计划任务功能。下面将详细介绍这个项目及其相关知识点。 1. **Android 应用程序架构** ...

    日程安排:jQuery的日历插件 FullCalendar Java MySQL.doc

    Servlet 是 Java 提供的一种用于构建动态 Web 应用的技术,它可以接收和响应来自客户端的请求。在这个例子中,Servlet 负责从数据库中获取日程事件数据,并以 JSON 格式返回给前端。 5. **Servlet 3.0 注解**:`@...

    cinemaManagementSystem:用于管理电影院员工和电影排程的应用程序

    作者:Ngosa Kangwa学生编号:213021404 ###项目名称:Eat See Here电影院管理系统### 背景:该应用程序将用于管理电影院的大多数活动。... ###问题:电影院目前使用手动计费和排程系统,效率很低而且难以维护###

    活动安排java版

    - **适用场景**:活动选择问题适用于多种实际场景,例如会议安排、课程表排程等需要避免时间冲突的情况。 - **扩展**:可以通过对该算法进行扩展来解决更复杂的问题,例如考虑每个活动的重要性或收益等其他因素。 ...

    Java 语言基础 —— 非常符合中国人习惯的Java基础教程手册

    于涉足应用程序其他部分的数据。 2.2.3 消息 一个单独的对象一般不十分有用,而作为一员出现在包含有许多其他对象的大程序或应 用程序之中,通过这些对象的相互作用,程序员可实现高层次的操作和更负责...

    模拟退火算法解决置换流水车间调度问题JSP(python实现)-含程序流程图+问题源码+实验报告

    置换流水车间调度问题(Permutation Flow Shop Scheduling Problem,PFSP)是一类经典的排程问题,其中有多个流水线车间,每个车间都包含多个工作站,每个车间上的工作站都要处理一系列任务。任务的处理顺序和所分配...

    Springboot實現多綫程排隊實例

    Spring Boot是一个快速开发Java应用程序的框架,它简化了配置和启动过程。在多线程环境中,Spring Boot提供了强大的支持,可以通过AOP(面向切面编程)和Spring Task来管理任务调度和并发处理。在这个实例中,我们将...

    OptaPlanner中文使用手册

    - **软件需求**:支持Java 8及以上版本,可以集成到任何基于Java的应用程序中。 ##### 1.3 规划问题 规划问题通常指的是需要优化资源分配的一类问题,这类问题的特点包括: - **NP-完全或NP难**:规划问题往往...

    简单的全路径全文搜索的程.zip_全文搜索_搜索 程

    这可能包括使用编程语言(如Python或Java)编写脚本,来读取文件内容,建立索引,并提供查询接口以执行搜索操作。 标签“全文搜索”和“搜索_程”进一步强调了这是一个关于构建搜索程序的教程,重点在于处理文本...

    Algorithm_hash归并快排算法_

    标题中的"Algorithm_hash归并快排算法_"表明我们要讨论的是一个与哈希(Hash)合并和快速排序(Quick Sort)算法相关的编程实现...对于深入理解这些算法及其在量化投资策略中的应用,研究这些源码和文档将非常有价值。

    Oracle石化行业实施案例.pptx

    在供应链管理方面,Oracle e-Business Supply Chain Suite提供了全面的功能,包括需求计划、先进供应链计划、全球可用性检查服务器、制造排程、风险优化等。这些工具允许企业根据市场需求动态调整生产计划,优化库存...

    Oracle在石化行业的解决方案.pptx

    Oracle e-Business Supply Chain Suite提供了全面的供应链管理功能,如需求计划、先进供应链计划、全球可用性检查(Global ATP Server)、制造排程和风险管理等。在石化行业中,这些功能可以帮助企业更准确地预测...

    数学建模10大最常用算法、程序源码打包.zip

    在解决组合优化问题如排程、设计优化等领域效果显著。 5. **粒子群优化**:粒子群优化是基于群体智能的优化方法,每个粒子代表一个解,通过迭代更新找到最优解。适用于解决连续和离散优化问题。 6. **蒙特卡洛方法...

    编程常用英语.doc

    - **应用场景**: 如Java EE中的Spring框架、Android开发中的Jetpack组件等。 #### 3. Architecture (架构、系统架构) - **定义**: 架构指的是一种高层次的设计,用于定义系统的组织结构以及各个组成部分之间的相互...

    开源框架 Spring Gossip

    简单邮件 HTML 邮件 内嵌图片或附档 排程 Spring则对 java.util.Timer提供了抽象封装,让您可以善用Spring的容器管理功能,而Spring对Quartz进行了封装,让它在使用上更加方便。 使用 ...

    C# Winform数据库应用设计(附开发案例

    我们需要掌握c#中的变量、数据类型、运算符、条件、分攴、循环等基C排基础语法,这些 语言层血的知识是我们编写所有程序的基础,因此必须牢固掌握。 核心技能部分 1.1Net与C#概述 1.1.1Net与C#的产生与应用 1. Anders ...

    程序员英语单词册

    1. **Application (应用程式/应用、应用程序)** - 定义:一个设计用来完成特定任务或一组任务的软件。 - 示例:Microsoft Word 是一款用于文字处理的应用程序。 2. **Application Framework (应用程式框架/应用...

Global site tag (gtag.js) - Google Analytics