温馨提示×

Go语言中的goroutine怎么创建和使用

小亿
83
2024-04-12 20:02:07
栏目: 编程语言

在Go语言中,可以通过关键字go来创建一个goroutine,goroutine是一种轻量级的线程,可以并发执行任务。创建goroutine的语法如下:

go func_name()

其中func_name()是一个函数的调用,该函数会在一个新的goroutine中执行。

除此之外,还可以使用匿名函数来创建goroutine:

go func() {
    // 执行任务
}()

在使用goroutine时,可以利用通道(channel)来实现goroutine之间的通信。可以使用make函数创建一个通道,然后使用<-来进行发送和接收数据。例如:

ch := make(chan int)

go func() {
    ch <- 42 // 发送数据到通道
}()

result := <-ch // 从通道中接收数据
fmt.Println(result)

注意,在使用goroutine时,需要注意避免数据竞态问题,可以使用sync包中的互斥锁(Mutex)来保护共享数据的访问。

0