首页 > 其他 > 详细

漫谈并发

时间:2017-09-04 23:44:43      阅读:274      评论:0      收藏:0      [点我收藏+]

      关于并发,百科中给出的精准的定义:“ 在计算机科学中,并行性(英语:Concurrency)是指在一个系统中,拥有多个计算,这些计算有同时执行的特性,而且他们之间有着潜在的互动。因此系统可进行的执行路径会有相当多个,而且结果可能具有不确定性。并发计算可能会在具备多核心的同一个晶片中复合运行,以优先分时线程在同一个处理器中执行,或在不同的处理器执行”。这里强调一下,“并发”不是“并行”,或者说“并发”仅仅是“并行”的一个子集,具有并行的“表面特性”,然而概念上是不同的,可以用下图简单说明一下:

技术分享

并发的有点就不赘述了,主要想介绍一下并发编程相关的知识点。并发常规做法主要有:多进程、单进程多线程、多路复用等,无论哪种方案都存在资源竞争问题,以多线程为例,介绍一下如何保证并发安全性问题,传统的手段:锁、原子操作等,当然传统的手段很难保证开发效率,于是有涌现了很多更高级的并发方案,如Actor、CSP并发模型等,下面简单介绍一下。

一.传统的“锁”机制

     前辈们为了做高性能并发也是费尽苦心了,提出了各种锁来保证并发的效率和安全性,常见的锁:互斥锁(Mutex)、信号量(Seamphore)、读写锁(RWLock)、条件变量(Cond)、临界区(Critical Section)

漫谈并发

原文:http://www.cnblogs.com/lixiang-share/p/7476190.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!