
jdk并发包
文章平均质量分 94
pmdream
每天进步一点点,如果没有学习那就是倒退
展开
-
[锁] synchronized与ReentrantLock
前言 关于锁,这两个锁应该是面试最常见的内容; ReentrantLock原理 深入理解Java并发之synchronized实现原理 上面两个大佬的文章,应该是看来看去写得比较清晰明白的了。 在回顾完这两个锁的实现,我又有一些新的疑问。 疑问 1.ReentrantLock的Node.SIGNAL这是什么东西,几种状态有什么意义 2.CAS面试要掌握到什么程度呢? 3.线程的中断?线程有哪些状态? 4.AQS和cas 5.操作系统线程是怎么切换的,内核态,用户态? 6.底层的操作系原创 2021-08-22 16:17:27 · 138 阅读 · 1 评论 -
[JDK并发包]AtomicInteger
前言: AtomicInteger 美[əˈtɑːmɪk]美[ˈɪntɪdʒər] java并发机制中主要有三个特性需要我们去考虑,原子性、可见性和有序性。synchronized关键字可以保证可见性和有序性却无法保证原子性。而这个AtomicInteger的作用就是为了保证原子性。 为什么出现这个类? 详解java并发原子类AtomicInteger(基于jdk1.8源码分析) 因为在并发下面,打印i++的时候 对于i++的操作,其实可以分解为3个步骤。 (1)从主存中读取a的值 (2.原创 2020-07-16 15:04:08 · 238 阅读 · 0 评论 -
[JDK并发包]线程基础知识
1.线程优雅的关闭? 线程不能运行到一半强制杀死。因为官方不建议用stop() destory()等方法。 因为强制杀死线程,线程资源不能正常关闭。 Java规定:当所有的非守护线程退出之后,Jvm的进程才会推出。 所以守护进程是不算数,不影响进程的退出。 1.1 一般通过标志位来设置关闭 会设置一个stopped的标志位来设定停止。 1.2 InterruptedException()函数和interrupt函数 t.interrupt()函数可以打断线程,抛不抛出异常看是否声明了。 1原创 2020-07-16 11:27:44 · 132 阅读 · 0 评论