(一)并发理论知识

1.同步和异步
同步代表程序执行一个请求,知道请求完成,再处理下一个请求
异步代表程序执行一个请求,会直接返回,会单独开一个线程让这个请求执行,同时执行下一个请求,并不一定等请求完成再处理下一个请求

2.并发和并行
并行就是多个线程一起进行
并发就是一个线程轮流执行

3.临界区

4.阻塞和非阻塞
5.死锁、饥饿、活锁
死锁,就是指线程之间相互阻塞,如图中小汽车,A必须等B执行,B必须等C执行完,C必须等D执行完,D又必须等A执行完,这样就变成了死循环,谁都无法获取资源,导致程序停止,这也是静态锁

活锁就像两个人进门,B让的时候A也让,B向前的时候A也向前,结果两个都无法通过

6.并发级别
1)阻塞:
当一个线程进入临界区的时候其他的线程必须等待当前线程完成以后才能进入
2)无障碍:
无障碍是一种非常弱的非阻塞调度
自由出入临界区
当无竞争时,在有限步数内完成操作
在有竞争时,回滚
(比如说A,B同时对一个坐标进行读写操作,A读完X继续读取Y坐标的时候,B对坐标进行改动,A就回滚操作重新读取,因为A默认X可能已经改变了)
3)无锁:(最常见的用法)
具有无障碍的特征
同时确保有一个线程可以胜出也就是执行完成
4)无等待:(最好的情况)
具有无锁的所有特征
要求所有的线程都在有限步数内完成操作


7并行的两个定律 主要用于算加速比




  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值