go语言介绍

Go语言为并发而生

go语言(或 Golang)是Google开发的开源编程语言,诞生于2006年1月2日,于2009年11月开源,2012年发布go稳定版。Go语言在多核并发上拥有原生的设计优势,Go语言从底层原生支持并发,无须第三方库、开发者的编程技巧和开发经验。

go是非常年轻的一门语言,它的主要目标是“兼具Python 等动态语言的开发速度和C/C++等编译型语言的性能与安全性”

Go语言的并发是基于goroutine的,goroutine类似于线程,但并非线程。可以将goroutine理解为一种虚拟线程。Go 语言运行时会参与调度goroutine,并将goroutine合理地分配到每个 CPU 中,最大限度地使用CPU性能。开启一个goroutine的消耗非常小(大约2KB的内存),你可以轻松创建数百万个goroutine

goroutine的特点:

  1. goroutine 具有可增长的分段堆栈。这意味着它们只在需要时才会使用更多内存。

  2. goroutine 的启动时间比线程快。

  3. goroutine 原生支持利用channel安全地进行通信。

  4. goroutine 共享数据结构时无需使用互斥锁。

go适合做什么

  • 服务端开发

  • 分布式系统,微服务

  • 网络编程

  • 区块链开发

  • 内存KV数据库,例如boltDB、levelDB

  • 云平台

Last updated

Was this helpful?