随笔分类 - Java-多线程
摘要:当前用的一个线程池工具呢,感觉不怎么好。缺点如下: 1. 提交任务execute后,无异常直接返回true,表示任务执行成功。但是由于异步执行,真正执行到run方法期间产生的异常虽然有处理逻辑,但是前端无法感知,所以很可能返回的是成功,实际上却是失败的。 2. 由于是执行execute方法,是无法得
阅读全文
摘要:设置同步状态,利用CAS操作。 进入tryLock,实际上是非公平锁的实现(非公平锁:不能保证正在排队的线程能拿到锁,因为可能被新来的线程抢走) 进入lock,实际上是公平锁的实现(公平锁:老的线程在排队,新来的线程也一样要排队,不能抢占) tryLock和lock不同点 1. tryLock不管拿
阅读全文
摘要:基本概念解释 并发:一个处理器处理多个任务,这些任务对于处理器来说是交替运行的,每个时间点只有一个任务在进行。 并行:多个处理器处理多个任务,这些任务是同时运行的。每个时间点有多个任务同时进行。 进程与线程:一个进程可以拥有多个线程,线程是系统调度的最小单位。理论上一个进程可用的虚拟空间是2G,默认
阅读全文
摘要:所属包: java.util.concurrent.ThreadPoolExecutor 类关系: public class ThreadPoolExecutor extends AbstractExecutorService 1. 继承关系 ThreadPoolExecutor 继承了一个抽象类:
阅读全文