
多线程
文章平均质量分 97
多线程知识
¥小包
这个作者很懒,什么都没留下…
展开
-
并发与并行,线程与进程如何理解
????一、前言二、进程1、程序与进程2、进程的调度与时间片三、线程1、有了进程为什么还要线程2、什么时候使用多线程四、并发与并行一、前言1、冯诺依曼体系结构我们所认识的计算机,都是有一个个的硬件组件组成输入单元:包括键盘,鼠标,扫描仪,写板等;中央处理器(CPU):含有运算器和控制器等;输出单元:显示器,打印机等关于冯诺依曼,必须强调几点:这里的存储器指的是内存,不考虑缓存情况,这里的CPU能且只能对内存进行读写,不能访问外设(输入或输出设备),外设(输入或输出设备)要输入或者输出数据,也只能原创 2020-08-24 16:12:36 · 1316 阅读 · 0 评论 -
Java多线程中画图带你理解CAS和ABA问题
CAC和ABA一、CAS问题1、什么是CAS2、为什么会有CAS机制的出现3、CAS执行后的结果二、ABA问题1、什么是ABA2、如何解决ABA问题一、CAS问题1、什么是CASCAS是英文单词Compare And Swap的缩写,翻译过来就是比较并替换。CAS 算法它包含3 个参数:CAS(V,A,B)①V表示要更新的变量(内存值)②A表示预期值(旧的)③B表示要修改的新值当且仅当V等于于A值时,才会将V的值设为B如果V 值和A值不同,则说明已经有其他线程做了更新,则当前线程原创 2020-08-05 00:33:10 · 963 阅读 · 2 评论 -
多线程——这些锁策略(乐观悲观锁、读写锁、自旋锁、可重入锁、公平非公平锁)了解吗?
锁策略一、乐观锁 VS 悲观锁二、读写锁 VS 一把大锁三、用户态自旋锁 VS 内核态重量级锁四、可重入锁五、公平锁 VS 不公平锁一、乐观锁 VS 悲观锁1. 乐观锁:乐观锁是一种乐观思想,即认为读多写少,遇到并发写的可能性低,每次去拿数据的时候都认为别人不会修改,所以不会上锁,但是在更新的时候会判断一下在此期间别人有没有去更新这个数据,采取在写时先读出当前版本号,然后加锁操作(比较跟上一次的版本号,如果一样则更新),如果失败则要重复读-比较-写的操作。java 中的乐观锁基本都是通过CAS 操作实现原创 2020-08-04 17:14:44 · 469 阅读 · 0 评论