码迷,mamicode.com
首页 > 其他好文 > 详细

Go CSP模型

时间:2018-06-29 10:58:30      阅读:166      评论:0      收藏:0      [点我收藏+]

标签:通过   actor   bsp   通道   存储   proc   并发编程   发送   描述   

CSP 是 Communicating Sequential Process 的简称,中文可以叫做通信顺序进程,是一种并发编程模型,由 Tony Hoare 于 1977 年提出。简单来说,CSP 模型由并发执行的实体(线程或者进程)所组成,实体之间通过发送消息进行通信,这里发送消息时使用的就是通道,或者叫 channel。CSP 模型的关键是关注 channel,而不关注发送消息的实体。Go 语言实现了 CSP 部分理论,goroutine 对应 CSP 中并发执行的实体,channel 也就对应着 CSP 中的 channel。 也就是说,CSP 描述这样一种并发模型:多个Process 使用一个 Channel 进行通信, 这个 Channel 连结的 Process 通常是匿名的,消息传递通常是同步的(有别于 Actor Model)。

 

Channel

channel可以理解为管道,它的主要功能是:

  1. 队列存储数据
  2. 阻塞和唤醒goroutine

Go CSP模型

标签:通过   actor   bsp   通道   存储   proc   并发编程   发送   描述   

原文地址:https://www.cnblogs.com/vincenshen/p/9241610.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!