线程池和线程同步

Java 

线程池类型Executors.newSingleThreadExecutor:一个单线程的线程池,可以用于需要保证顺序执行的场景,并且只有一个线程在执行。Executors.newFixedThreadPool(int nThreads):一个固定大小的线程池,可以用于已知并发压力的情况下,对线程数

CAS锁-ABA问题

Java 

CAS的原理其实很简单,为了保证在多线程环境下我们的更新是符合预期的,或者说一个线程在更新某个对象的时候,没有其他的线程对该对象进行修改。在线程更新某个对象(或值)之前,先保存更新前的值,然后在实际更新的时候传入之前保存的值,进行比较,如果一致的话就进行更新,否则失败。注意,CAS在java中是用n

线程和锁

Java 

Java线程的状态初始实现Runnable接口和继承Thread可以得到一个线程类,new一个实例出来,线程就进入了初始状态就绪就绪状态只是说有资格运行,调度程序没有挑选到你,你就永远是就绪状态。调用线程的start()方法,此线程进入就绪状态。当前线程sleep()方法结束,其他线程join()结