评论

收藏

[其他] 并发编程基础与原子操作

网络安全 网络安全 发布于:2021-07-13 23:06 | 阅读数:267 | 评论:0

DSC0000.png
小疑问: 上面的Thread的构造方法和我们平时new Thread()感觉有点区别啊?平时写的时候没有写“ThreadGroup,stackSize”参数啊

2.线程的生命周期
DSC0001.png
DSC0002.png
下面是对suspend()方法和stop()方法的原理解析
DSC0003.png
小疑问: 上面画红线的地方所表达的意思是什么呢?
DSC0004.png
解释: “守护线程”的作用就是为了服务“非守护线程”的,只要存在“非守护线程”,那么“守护线程”就不会死亡
小疑问: 为什么上述suspend会导致数据不同步?以及suspend造成死锁的原理是什么?
DSC0005.png
小疑问: ①上述第3点“如果线程阻塞,如采用sleep(),线程将捕捉异常并退出阻塞”这句话不是很理解,哪里来的异常呢?这是个问题,sleep()方法并不会产生异常
②interrupt()方法和isInterrupted()方法的作用各是什么呢?
二.原子操作
1.CAS(Compare and Swap)
DSC0006.png
小疑问: 上述说的ABA问题,循环时间长开销大是什么意思啊?为什么会循环时间长啊?
DSC0007.png



关注下面的标签,发现更多相似文章