程序员必知的七种并发编程模型

Posted lfs2640666960

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了程序员必知的七种并发编程模型相关的知识,希望对你有一定的参考价值。

1.线程与锁
线程与锁模型有很多众所周知的不足,但仍是其他模型的技术基础,也是很多并发软件开发的首选。

2.函数式编程

函数式编程日渐重要的原因之一,是其对并发编程和并行编程提供了良好的支持。函数式编程消除了可变状态,所以从根本上是线程安全的,而且易于并行执行。

 

3.Clojure之道——分离标识与状态

编程语言Clojure是一种指令式编程和函数式编程的混搭方案,在两种编程方式上取得了微妙的平衡来发挥两者的优势。

 

4.actor

actor模型是一种适用性很广的并发编程模型,适用于共享内存模型和分布式内存模型,也适合解决地理分布型问题,能提供强大的容错性。

 

5.通信顺序进程(Communicating Sequential Processes,CSP)

表面上看,CSP模型与actor模型很相似,两者都基于消息传递。不过CSP模型侧重于传递信息的通道,而actor模型侧重于通道两端的实体,使用CSP模型的代码会带有明显不同的风格。

 

6. 数据级并行

每个笔记本电脑里都藏着一台超级计算机——GPU。GPU利用了数据级并行,不仅可以快速进行图像处理,也可以用于更广阔的领域。如果要进行有限元分析、流体力学计算或其他的大量数字计算,GPU的性能将是不二选择。

 

7.Lambda架构

大数据时代的到来离不开并行——现在我们只需要增加计算资源,就能具有处理TB级数据的能力。Lambda架构综合了MapReduce和流式处理的特点,是一种可以处理多种大数据问题的架构。

注:文章转载自网络,如果您觉得本文对您有帮助,欢迎关注我的公众号【Java技术zhai】,有新文章发布会第一时间通知您。

以上是关于程序员必知的七种并发编程模型的主要内容,如果未能解决你的问题,请参考以下文章

高级程序员需知的并发编程知识

我的多线程-多线程必知的N个常识

并发编程:线程与多线程必知必会

机器学习研究者必知的八个神经网络架构

实现高并发秒杀的七种方式

实现高并发秒杀的七种方式