golang
特性
-
垃圾回收
a. 内存自动回收,无需开发人员管理内存
b. 开发人员专注业务实现,降低了心智负担
c. 只需要new分配内存,不需要释放
-
天然并发
a. 从语言层面支持并发
b. goroute,轻量级线程,创建成千上万个goroute成为可能 <通过cannel管道通信,是独立可调度的执行单位>
c. 基于CSP(Communicating Sequential Process)模型实现 <通信序列进程>
-
channel
进程间通信的渠道
a. 管道,类似unix/linux中的pipe
b. 多个goroute之间通过channel进行通信
c. 支持任何类型
func main(){ pipe := make(chan int,3) pipe <- 1 // 将1放入管道中 pipe <- 2 // 将2放入管道中 }