关于Quartz的基本知识,这里就不再多说,可以参考Quartz的example。这里主要要说的是,个人在Quartz和Spring集成的过程中,遇到的问题和个人理解。首先来说说个人的理解:1、Quartz的运行原理Quartz的重要组成部分就是,线程池和Trigger。而这些资源是被一个叫Stan...
分类:
编程语言 时间:
2014-07-27 22:34:19
阅读次数:
206
1 start: 2 3 System.Threading.RegisteredWaitHandle rhw = null; 4 new Action(() => 5 { 6 for (var...
分类:
编程语言 时间:
2014-07-26 17:08:12
阅读次数:
311
1.前言在阅读研究线程池的源码之前,一直感觉线程池是一个框架中最高深的技术。研究后才发现,线程池的实现是如此精巧。本文从技术角度分析了线程池的本质原理和组成,同时分析了JDK、Jetty6、Jetty8、Tomcat的源码实现,对于想了解线程池本质、更好的使用线程池或者定制实现自己的线程池的业务场景...
分类:
编程语言 时间:
2014-07-26 14:56:00
阅读次数:
326
java.util.concurrent包: 1.Excutors类:通过这个类可获得多种线程池的实例Excutors.newSingleThreadExecutor():获得单线程的ExecutorService;Excutors.newFixedThreadPool(int nThreads):...
分类:
其他好文 时间:
2014-07-26 01:34:07
阅读次数:
339
universal-image-loade 的两个重要配置文件ImageLoaderConfiguration 和 DisplayImageOptions。 做个笔记也把它分享给大家。...
分类:
其他好文 时间:
2014-07-25 11:20:11
阅读次数:
265
客户反映系统越用越慢,重启服务器后段时间内系统恢复正常 老年代 垃圾回收不了。 full gc 每分钟执行40次左右。 开始以为是内存泄漏,导出jvm内存快照 快照中可以看到线程池里有问题。但是看不出具体的问题原因 ...
分类:
其他好文 时间:
2014-07-25 00:04:44
阅读次数:
379
基于服务器的计时器(System.Timers.Timer)
System.Timers.Timer不依赖窗体,是从线程池唤醒线程,是传统的计时器为了在服务器环境上运行而优化后的更新版本
在VS2005的工具箱中没有提供现成的控件,需要手工编码使用此计时器。
using System;
using System.Collections.Generic;
usi...
分类:
其他好文 时间:
2014-07-24 23:19:53
阅读次数:
255
捕获Java线程池执行任务抛出的异常Java中线程执行的任务接口java.lang.Runnable 要求不抛出Checked异常, public interface Runnable { public abstract void run(); } 那么如果 run() 方法中抛出了Runt...
分类:
编程语言 时间:
2014-07-24 21:57:42
阅读次数:
246
一、线程池作用 在上一篇随笔中有提到多线程具有同一时刻处理多个任务的特点,即并行工作,因此多线程的用途非常广泛,特别在性能优化上显得尤为重要。然而,多线程处理消耗的时间包括创建线程时间T1、工作时间T2、销毁线程时间T3,创建和销毁线程需要消耗一定的时间和资源,如果能够减少这部分的时间消耗,性能将....
分类:
编程语言 时间:
2014-07-24 21:49:53
阅读次数:
318
线程池中的死锁情况
这次死锁发生在什么情况下呢?在最开始写线程池的时候,我设计了线程是可重用的,主要是通过Event信号实现,通过在每个线程核心工作代码执行完毕后会将自己归还到池中,然后等待Event信号。主线程会以循环超时阻塞的方式监视一个任务队列,当发现有任务时便会从线程池中取出一个线程,并设置它的任务和目标函数,然后去start或者resume,resume就是会设置Event信号让线程不再阻塞,这里,从池中取线程的方法_get和归还线程方法returnThread都已经加锁,_get和return...
分类:
编程语言 时间:
2014-07-23 17:15:01
阅读次数:
333