同步异步,并发并行
这几个概念有时候很容易把我混淆了,得把它记录一下。
同步:执行完任务A再去执行任务B,不可以同时执行
文章图片
图片发自App 异步:执行任务A的同时执行任务B,可以同时做不同的事情。
文章图片
图片发自App 并发:其实是一个线程做多个任务,任务直接切换速度很快,看起来同时执行,是一个伪异步。
文章图片
图片发自App 并行:真正的异步,多个任务同时执行,多核CPU可以开启多个线程同时执行多个任务。
文章图片
图片发自App 【同步异步,并发并行】串行:其实是同步线程的实现方式,任务A执行结束才开始执行任务B,一个线程只能执行一个任务。
推荐阅读
- Spectrum|Spectrum 区块偶尔停止同步问题排查与解决笔记
- MYSQL主从同步的实现
- spring|spring boot中设置异步请求默认使用的线程池
- Promise详解
- CountDownLatch-线程并发的发令枪
- Java并发编程|Java并发编程 - 深入剖析ReentrantLock之非公平锁加锁流程(第1篇)
- Promise|Promise 异步控制流
- Vue组件开发之异步组件详解
- 关于ajax异步分页传输数据到页面为字符串的JS解决办法
- 啥是负载均衡、高并发、分布式、集群()