Go Web编程实战----并发goroutine

Posted 李元静

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Go Web编程实战----并发goroutine相关的知识,希望对你有一定的参考价值。

目录

什么是goroutine?

在Go语言中,每一个并发执行的活动被称为goroutine。使用go关键字可以创建goroutine,其完整定义如下:

go func_name()

其中,go是关键字,需要放在一个需要调用的函数之前;func_name()是定义好的函数或者闭包。

在程序的开发中,先将go关键字声明放到一个需要调用的函数之前,然后在相同地址空间调用运行这个函数,这样该函数执行时,便会作为一个独立的并发线程。这种线程在Go语言中被称为goroutine。

使用方式

goroutine具体的使用方式如下:

package main

import (
	"fmt"
)

func print_text()
	fmt.Println("Go语言的基础内容讲解到这里就算全部讲完了")


func main() 
	go print_text()
	fmt.Println("end")

运行之后,输出内容如下:


可以发现,控制台先输出的“end”,后输出的才是方法打印。如果你在go与打印end中间插入下面这行代码,就会按顺序输出:

go print_text()
time.Sleep(1*time.Second) //插入代码
fmt.Println("end")

需要注意的是,goroutine在多核CPU环境下是并行的。如果代码块在多个goroutine中执行,则实现了代码的并行。

关于goroutine的详细介绍,我们将在后续的Go Web中详细讲解。

以上是关于Go Web编程实战----并发goroutine的主要内容,如果未能解决你的问题,请参考以下文章

Go Web编程实战----并发goroutine

Go Web编程实战----并发goroutine

《Go语言实战》摘录:6.2 并发 - goroutine

云原生时代崛起的编程语言Go并发编程实战

go语言学习笔记 — 进阶 — 并发编程:轻量级线程goroutine —— 并发与并行

Go part 8 并发编程