死锁 发表于 2018-08-03 | 更新于: 2018-08-03 | 分类于 Java之并发编程 | 阅读次数: 字数统计: 1,237 字 | 阅读时长 ≈ 5 分钟 死锁概述死锁是指两个或两个以上的进程在执行过程中,由于竞争资源或者由于彼此通信而造成的一种阻塞的现象,若无外力作用,它们都将无法推进下去。此时称系统处于死锁状态或系统产生了死锁,这些永远在互相等待的进程称为死锁进程。 阅读全文 »
线程池 发表于 2018-08-03 | 更新于: 2018-08-03 | 分类于 Java之并发编程 | 阅读次数: 字数统计: 1,816 字 | 阅读时长 ≈ 7 分钟 Thread类new Thread的弊端 每次new Thread新建对象,性能差。 线程缺乏统一的管理,可能无限制地新建线程,相互竞争,有可能占用更多的系统资源导致宕机或者OOM。 缺少更多高级功能,如:更多执行、定期执行,线程中断等。 阅读全文 »
J.U.C之BlockingQueue 发表于 2018-08-03 | 更新于: 2018-08-03 | 分类于 Java之并发编程 | 阅读次数: 字数统计: 709 字 | 阅读时长 ≈ 3 分钟 概述BlockingQueue见名知意,即阻塞队列。它是一个线程安全的队列。大致有两种情况: 队列满了,但此时还有入队操作; 队列空了,但此时还有出队操作。 阅读全文 »
J.U.C之ForkJoin 发表于 2018-08-03 | 更新于: 2018-08-03 | 分类于 Java之并发编程 | 阅读次数: 字数统计: 1,342 字 | 阅读时长 ≈ 7 分钟 概述ForkJoin框架是JDK 1.7提供的一种用于并行任务执行的框架。有些像Hadoop中的MapReduce机制。即将一个大任务分为(fork)多个小任务分别执行,最后将多个小任务的执行结果进行汇总(join)。 阅读全文 »
J.U.C之FutureTask 发表于 2018-08-03 | 更新于: 2018-08-03 | 分类于 Java之并发编程 | 阅读次数: 字数统计: 1,222 字 | 阅读时长 ≈ 6 分钟 概述 由于线程是实现了Runnable接口或继承了Thread类,其执行后无法回调其线程的执行结果,因此JDK 1.5提供了一些新机制:接口Callable和Future。通过他们可以得到线程的执行结果。 阅读全文 »