0 0

[紧急]quartz线程无法停止15

配置如下
<task:annotation-driven executor="myExecutor" scheduler="myScheduler"/>
<task:executor id="myExecutor" pool-size="5"/>
<task:scheduler id="myScheduler" pool-size="10"/>}

使用注解
@Scheduled(cron="${timer.cron.expression}")
public void timer(){
   //...
}

应用关闭的时候报:
The web application [/demo] appears to have started a thread named [DefaultQuartzScheduler_Worker-1] but has failed to stop it. This is very likely to create a memory leak.
The web application [/demo] appears to have started a thread named [DefaultQuartzScheduler_Worker-2] but has failed to stop it. This is very likely to create a memory leak.
...

jar : quartz-all-1.8.4.jar

求解决方案

问题补充:任务的执行频率是5分钟/次,所以应用关闭的时候是有线程没有停止,我就是想加个destroy方法之类的手动停止,但是注解的调度器,不知道怎么停止
2012年1月30日 14:17

2个答案 按时间排序 按投票排序

0 0

这里有个帖子,现象与LZ相似, 可以参考一下。
http://stackoverflow.com/questions/8677008/catalina-out-memory-leak-error

2012年1月30日 14:28
0 0

对quartz不太熟悉, 不过建议把堆栈日志完整的发一份上来, 如果是线程无法停止,有2中可能:
1. 线程执行的任务仍然在运行,所以无法关闭
2. 活动的线程执行完成后, 线程池没有被关闭掉。

2012年1月30日 14:26

相关推荐

    Quartz多线程示例.rar

    在"Quartz多线程示例.rar"这个压缩包中,我们很显然会看到一个关于如何利用Quartz在多线程环境下运行任务的实例。 首先,`StdSchedulerFactory`是Quartz中的调度器工厂类,它是创建`Scheduler`对象的主要方式。`...

    quartz线程工程实例

    在这个"quartz线程工程实例"中,我们将深入探讨如何在实际项目中利用Quartz来管理和调度线程,以及如何自定义JOB类以满足特定需求。 首先,Quartz的核心概念包括Scheduler、Job、Trigger和Calendar。Scheduler是...

    quartz线程管理共7页.pdf.zip

    Quartz是一款开源的作业调度框架,它允许开发者创建、管理和执行计划任务。...遗憾的是,由于无法直接查看压缩包内的内容,以上分析仅基于对Quartz的一般理解,实际文档可能包含更具体的实现细节和技术要点。

    Quartz调度、终止执行的任务

    Quartz是一款开源的作业调度框架,它允许开发者创建和安排任务执行。在Java应用程序中,Quartz能够帮助我们在特定的时间点或按照预设的周期执行某些功能,如数据收集、日志清理等。当我们需要终止某个正在运行的任务...

    spring和quartz的定时器的启动和停止例子

    本篇将深入探讨如何在Spring中启动和停止Quartz定时器。 首先,我们需要理解Spring和Quartz的基本概念。Spring是一个强大的Java企业级应用开发框架,它提供了依赖注入(DI)和面向切面编程(AOP)等核心特性。而...

    windows版本的进程监控,C#基于多线程Quartz实现,每10秒监测一次.zip

    5. 为了确保程序退出时能够正确关闭调度器,通常会在应用程序的生命周期事件中处理Scheduler的停止。 在项目文件"process-monitor-developer"中,可能包含了以下内容: - 源代码文件:C#源代码文件,包含Job类的...

    Java 项目中使用单线程 实现 Quartz-2.2.1 触发优先级 源码下载

    用一个工作线程创建一个调度程序; 安排三个不同优先级的触发器,第一次同时触发,第二次以错开的时间间隔触发; 启动Quartz Scheduler; 等待30秒让 Job 有机会触发触发器; 关闭调度程序;

    C# winform windows版本的进程监控,基于多线程Quartz实现,每10秒监测一次

    C# winform windows版本的进程监控,基于多线程Quartz实现,每10秒监测一次。 1.进程监控每10秒监测一次。 2.红色表示 对其监控,但是未运行 3.灰色表示未启用对当前进程的监控 4.白色表示正常运行的进程信息

    spring和quartz的集成(java线程的方式运行)

    这个是spring 和 quartz的集成,quartz是单独的包,java线程的方式运行,利用自定义Jobfactory来解决spring注入service空指针的问题,简单实例执行main方法即可,很实用

    Quartz-1.8.6 CSDN 下载

    Quartz不仅仅是线程和线程管理。为确保可伸缩性,Quartz采用了基于多线程的架构。启动时,框架初始化一套worker线程,这套线程被调度器用来执行预定的作业。这就是Quartz怎样能并发运行多个作业的原理。 Quartz依赖...

    Quartz 线程池

    - **ThreadNamePrefix**:线程名称的前缀,方便识别执行 Quartz 任务的线程。 ### 四、Quartz 线程池的优化 1. **合理设置线程池大小**:根据应用的并发需求和服务器资源,调整线程池大小,避免过度消耗系统资源或...

    Quartz.NET-2.0

    Quartz不仅仅是线程和线程管理。为确保可伸缩性,Quartz.NET采用了基于多线程的架构。启动时,框架初始化一套worker线程,这套线程被调度器用来执行预定的作业。这就是Quartz.NET怎样能并发运行多个作业的原理。...

    Quartz-2.2.3 CSDN 下载

    Quartz不仅仅是线程和线程管理。为确保可伸缩性,Quartz采用了基于多线程的架构。启动时,框架初始化一套worker线程,这套线程被调度器用来执行预定的作业。这就是Quartz怎样能并发运行多个作业的原理。 Quartz依赖...

    Quartz-2.1.7 CSDN 下载

    Quartz不仅仅是线程和线程管理。为确保可伸缩性,Quartz采用了基于多线程的架构。启动时,框架初始化一套worker线程,这套线程被调度器用来执行预定的作业。这就是Quartz怎样能并发运行多个作业的原理。 Quartz依赖...

    Quartz-2.0.2 CSDN下载

    Quartz不仅仅是线程和线程管理。为确保可伸缩性,Quartz采用了基于多线程的架构。启动时,框架初始化一套worker线程,这套线程被调度器用来执行预定的作业。这就是Quartz怎样能并发运行多个作业的原理。 Quartz依赖...

    Spring线程时间配置:Quartz和CronExpression

    ### Spring线程时间配置:Quartz与CronExpression详解 在Spring框架中,为了实现定时任务的调度,引入了一个强大的工具——Quartz。Quartz是一个功能丰富的开源作业调度器,可以用于Java应用程序中的作业调度。它...

    Android studio下的quartz工程

    - **主线程限制**:由于Android对主线程的操作有严格限制,所有耗时操作应放在后台线程执行,避免阻塞UI。 - **生命周期管理**:确保在应用启动时启动调度器,并在退出时关闭,以防止内存泄漏。 - **权限申请**:...

    quartz quartz-1.8.6 dbTables 建表sql

    5. **QRTZ_BLOB_TRIGGERS**:如果作业的数据(JobDataMap)过大,无法存储在QRTZ_JOB_DETAILS表中,那么这些数据会被存储在这个表中。 6. **QRTZ_JOB_LISTENERS** 和 **QRTZ_TRIGGER_LISTENERS**:这两个表用于跟踪...

    quartz

    4. **org.quartz.scheduler.threadName**:调度器线程的名称,可以是任何有效的 Java 线程名称。如果不指定,线程名将默认为实例名加上 "_QuartzSchedulerThread" 后缀。 5. **org.quartz.scheduler.idleWaitTime**...

Global site tag (gtag.js) - Google Analytics