并发
syouya.shiraki
这个作者很懒,什么都没留下…
展开
-
原子操作:CAS、TAS、TTAS、FAA浅析
原子操作:CAS、TAS、TTAS、FAA浅析什么是原子操作原子操作(atomic operation)是指不会被线程调度机制打断的操作;这种操作一旦开始,就一直运行到结束,中间不会有任何 context switch (切换到另一个线程)。保证访问共享资源是唯一的。一般原子操作需要CPU等硬件支持,使用硬件同步原语来实现原子操作。常用的原语有CAS(compare-and-swap)、TES(test-and-set)、FAA(fetch-and-add)CAS什么是CAS在计算机科学中原创 2020-07-11 15:07:56 · 5475 阅读 · 1 评论 -
Go语言入门-并发
Go语言入门-并发什么是并发1. 并发:在同一个时间段能够执行多个任务,把时间段分解为时间片,在不同的时间片通过状态切换来执行不同任务。(单个cpu)提到并发,就得提出另一个相关联的概念并行2. 并行:在同一个时间点执行的任务有多个。(多个cpu的情况)多核情况下并发和并行是可以组合的。而Go语言的并发goroutine也就是协程机制,像java中并发使用的是线程池也就是线程。至于线程和协程的区别。可以从以下进行区分:协程:独立的、更小的栈空间、共享堆、调度可以在用户态控制、没有优先级、没有编原创 2020-07-10 00:03:34 · 393 阅读 · 2 评论