
多线程
子房为之奈何
一名程序员,热爱编程,乐于助人,希望使用代码改变生活方式。
展开
-
理解理解CAS和Volatile
文章目录CAS的理解什么是CAS自旋锁ABA问题如何解决?Volatile可见性体会不保证原子性体会禁止指令重排CAS的理解什么是CASCompareAndSweep比较并交换。AtomicInteger atomicInteger = new AtomicInteger(1);//期望值是1,如果达到,那么就更新为2,否则不更新atomicInteger.compareAndSet(1,2);自旋锁比较当前线程工作内存中的值和主内存中的值,如果这个值是期望的,那么就执行操作,否则一直循原创 2020-09-10 20:32:03 · 302 阅读 · 0 评论 -
原来你是这样的线程池
我们知道,创建线程有四种方式继承Thread类实现Runnable接口实现Callable接口,jdk1.5新增使用线程池,jdk1.5新增那么,什么是线程池?简单理解,线程池就是将线程提前创建好的一个池子,需要的时候就取出使用,不在使用就归还给线程池。线程池有什么作用?我们创建、销毁线程,都要消耗特别大的资源,并发情况下,对于性能影响很大。使用线程池,能够提高响应速度。降低资源消耗,便于线程的管理。如何创建?1.通过官方提供的API创建ExecutorService th.原创 2020-09-06 23:44:54 · 143 阅读 · 0 评论