![](https://img-blog.csdnimg.cn/20201014180756922.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
多线程
文章平均质量分 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 · 1176 阅读 · 0 评论 -
FutureTask的使用方法和使用实例
FutureTask是一种可以取消的异步的计算任务。它的计算是通过Callable实现的,它等价于可以携带结果的Runnable,并且有三个状态:等待、运行和完成。完成包括所有计算以任意的方式结束,包括正常结束、取消和异常。 Future有个get方法而获取结果只有在计算完成时获取,否则会一直阻塞直到任务转入完成状态,然后会返回结果或者抛出异常。 Executor框架利用Futur...原创 2011-11-11 11:23:26 · 428 阅读 · 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 · 109 阅读 · 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 · 81 阅读 · 0 评论 -
newCachedThreadPool线程池
public static ExecutorService newCachedThreadPool()创建一个可根据需要创建新线程的线程池,但是在以前构造的线程可用时将重用它们。对于执行很多短期异步任务的程序而言,这些线程池通常可提高程序性能。调用 execute 将重用以前构造的线程(如果线程可用)。如果现有线程没有可用的,则创建一个新线程并添加到池中。终止并从缓存中移除那些已有 60 秒钟未被...原创 2011-11-20 11:35:33 · 805 阅读 · 0 评论