如何理解同步, 异步, 阻塞, 非阻塞

如何理解同步, 异步, 阻塞, 非阻塞?

貌似同步与阻塞有点相似, 异步与非阻塞感觉上也差不多…

同步和异步, 描述的是获取被调用者执行结果的方式.

  • 同步, 就是调用者主动去获取被调用者的结果;

  • 异步, 就是被调用者主动返回给调用者执行的结果(例如回调).

阻塞和非阻塞, 描述的是多线程之间处理临界资源时的方式

  • 阻塞: 多线程面对临界区的共享资源, 只能有先来后到, 谁先获取到锁权限, 谁执行, 没有权限的线程阻塞等着.

  • 非阻塞: 处理共享资源时, 采用一些手段, 让大家不用阻塞; 手段有什么呢? 自旋锁, 乐观锁, 分段锁, 共享锁, 或者ThreadLocal等

就是这么简单.
大家可能常常听说: 同步阻塞, 和异步非阻塞, 所以对概念之间有些混淆, 异步就是服务非阻塞的, 阻塞住了不同步又能如何.
好好斟酌一下, 体会更深.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

能力工场小马哥

如果对您有帮助, 请打赏支持~

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值