
线程-Thread
文章平均质量分 50
denghua10
这个作者很懒,什么都没留下…
展开
-
阻塞队列-BlockingQueue
队列具有先进先出的特点,成为经常应用于生产-消费者模式的数据结构。 1.将一个对象放到队列尾部,如果队列已满,就等待直到有空闲节点。 2.从队列头部取一个对象,如果没有对象,就等待直到有对象可取。 3.在存取队列的过程中,锁定队列对象,不允许其它线程访问队列。 import java.util.concurrent.BlockingQueue; import java.util.conc...原创 2011-04-12 23:30:02 · 122 阅读 · 0 评论 -
返回结果线程—等待单个线程
Callable接口与future类相结合可以实现future模式,Future模式在请求发生时,会产生一个Future对象给请求方,Future对象作用类似于代理,所代理的真实任务在另一个线程中继续进行,真实任务完成之后把结果放在future对象中。 import java.util.concurrent.Callable; import java.util.concurrent.Execu...原创 2011-04-13 00:32:42 · 133 阅读 · 0 评论 -
返回结果的线程-等待一组线程
CompletionService可以实现等待一组线程返回结果。原创 2011-04-13 00:34:34 · 126 阅读 · 0 评论 -
信号量控制
信号量控制,由于近期工作比较忙,所以出的慢。原创 2011-04-13 00:50:38 · 127 阅读 · 0 评论 -
任务计划线程池-ScheduledExecutorService
ScheduledExecutorService是一个任务计划线程池接口,线程池中的线程并不是一开始就处于运行状态,而是在需要的时间点上由线程管理者触发,同样允许指定多次触发时间间隔。 import java.util.Date; import java.util.concurrent.Executors; import java.util.concurrent.ScheduledExe...原创 2011-04-12 17:02:54 · 243 阅读 · 0 评论 -
固定线程池-newFixedThreadPool
固定线程池就不用说了,看看就知道了,主要是编写人员不用关注线程池如何调度线程,只用关注线程任务上,使用起来非常方便。 import java.util.concurrent.*; public class TestThreadPool { public static void main(String[] args){ //创建容量为5的线程池 ExecutorServic...原创 2011-04-12 17:25:33 · 232 阅读 · 0 评论 -
缓存线程池-newCachedThreadPool
缓存线程池与固定线程池的区别在于对于需要执行很多短期异步任务的程序来说,缓存线程池可以提高程序性能,因为长时间保持空闲的这种类型的线程池不会占用任何资源,调用缓存线程池对象将重用以前构造的线程(线程可用状态),若线程没有可用的,则创建一个新线程添加到池中,缓存线程池将终止并从池中移除60秒未被使用的线程。 import java.util.concurrent.ExecutorService; ...原创 2011-04-12 17:32:36 · 342 阅读 · 0 评论 -
线程同步辅助-CyclicBarrier
线程同步辅助-CyclicBarrier指的是属于同一个线程组中的线程必须在指定的集合点上到齐。其中最重要的方法就是await方法。 import java.util.concurrent.CyclicBarrier; import java.util.concurrent.ExecutorService; import java.util.concurrent.Executors; ...原创 2011-04-12 17:45:45 · 103 阅读 · 0 评论 -
线程同步辅助-CountDownLatch
CountDownLatch与CyclicBarrier基本相同,但是两者认为到达集合点的依据不同, CyclicBarrier依据到达集合点的线程数是否达到需要同步的线程数来认定是否需要解除锁定,而CountDownLatch依据计数器是否为0来认定是否需要解除锁定,当计数器为0时,当前线程从await处被唤醒,继续向下执行。...原创 2011-04-12 17:47:40 · 100 阅读 · 0 评论