
多线程
文章平均质量分 62
iteye_16154
这个作者很懒,什么都没留下…
展开
-
线程池(java.util.concurrent.ThreadPoolExecutor)的使用
[b]一、简介[/b]线程池类为 java.util.concurrent.ThreadPoolExecutor,常用构造方法为:[code="java"]ThreadPoolExecutor(int corePoolSize, int maximumPoolSize,long keepAliveTime, TimeUnit unit,BlockingQueue w...原创 2012-02-29 15:50:47 · 1252 阅读 · 0 评论 -
FutureTask的使用方法和使用实例
FutureTask是一种可以取消的异步的计算任务。它的计算是通过Callable实现的,它等价于可以携带结果的Runnable,并且有三个状态:等待、运行和完成。完成包括所有计算以任意的方式结束,包括正常结束、取消和异常。 Future有个get方法而获取结果只有在计算完成时获取,否则会一直阻塞直到任务转入完成状态,然后会返回结果或者抛出异常。 Executor框架利用Futur...原创 2011-11-11 11:23:26 · 467 阅读 · 0 评论 -
callable结合FutureTask的多线程使用(免打扰模式)
[code="java"]import java.util.concurrent.Callable;import java.util.concurrent.ExecutionException;import java.util.concurrent.FutureTask;/** * * @author Kaiwii Ho * Callable类就是一个有返回值的任务...原创 2011-11-11 12:03:34 · 156 阅读 · 0 评论 -
多线程的队列----BlockingQueue
[code="java"]import java.util.concurrent.ArrayBlockingQueue;import java.util.concurrent.BlockingQueue;import java.util.concurrent.ExecutorService;import java.util.concurrent.Executors; /**...原创 2011-11-11 17:06:08 · 104 阅读 · 0 评论 -
newCachedThreadPool线程池
public static ExecutorService newCachedThreadPool()创建一个可根据需要创建新线程的线程池,但是在以前构造的线程可用时将重用它们。对于执行很多短期异步任务的程序而言,这些线程池通常可提高程序性能。调用 execute 将重用以前构造的线程(如果线程可用)。如果现有线程没有可用的,则创建一个新线程并添加到池中。终止并从缓存中移除那些已有 60 秒钟未被...原创 2011-11-20 11:35:33 · 839 阅读 · 0 评论