并发编程
文章平均质量分 93
j并发相关
X² 编程说
这个作者很懒,什么都没留下…
展开
-
4.并发编程之Lock锁原理
上述对于锁的猜想,实际上是在AQS中实现的,Lock本身没有做特殊处理,核心的机制都在AQS中实现。共享锁互斥锁。原创 2024-07-27 22:27:07 · 890 阅读 · 0 评论 -
2.并发编程之同步锁
并发编程之同步锁1 线程的安全性并发给我们带来的问题就是,当多个线程操作同一个数据的时候,往往不能得到我们预期的结果,造成这个问题的原因是什么呢?其实就是该数据对多个线程没有可见性,这些线程不能有序性的去操作这个公共的数据,操作数据时还不是原子操作,所以导致预期结果不一致。因此我们可以总结出线程的安全性的三个体现:原子性:提供互斥访问,同一时刻只能有一个线程对数据进行操作(Synchronized、AtomicXXX、Lock)。可见性:一个线程对主内存进行了修改,可以及时被其他线程观察到(Syn原创 2021-10-24 21:43:51 · 930 阅读 · 0 评论 -
3.并发编程之可见性
线程安全性之可见性有序性看下面的代码,t1线程中用到了stop属性,在main线程中修改了stop属性的值来使得t1线程结束,但是t1线程并没有按照期望的结果执行。public class VolatileDemo { public static boolean stop=false; public static void main(String[] args) throws InterruptedException { Thread t1=new Thread(()->{原创 2021-11-16 00:14:58 · 707 阅读 · 0 评论 -
1.并发编程之线程原理
并发编程之线程原理1 多线程的基本原理线程的start方法,实际上底层做了很多事情,具体的实现简图如下:OS调度算法有很多,比如先来先服务调度算法(FIFO)、最短优先(对短作业的优先调度)、时间片轮转调度等。[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Dst73hrg-1635005660765)(/Users/xuzhengzheng/software/java course/并发编程/线程简图.png)]1.1 线程的状态线程在运行过程中,会存在几种不同的原创 2021-10-24 00:16:12 · 146 阅读 · 0 评论