如何在Go中使用goroutine创建并发任务?

11 min read

在Go中,使用goroutine非常容易创建并发任务。可以使用go关键字来启动goroutine。示例代码如下:

package main

import (
    "fmt"
    "time"
)

func sayHello() {
    fmt.Println("Hello")
}

func main() {
    go sayHello() // 创建一个goroutine
    time.Sleep(1 * time.Second) // 等待1秒钟
}

在上面的示例代码中,我们使用go关键字创建了一个goroutine,并在其中调用了sayHello函数。由于goroutine的执行是异步的,因此主函数不会等待sayHello函数执行完成,而是继续向下执行。

因此,我们在主函数中使用了time.Sleep函数来防止程序退出前sayHello函数没有执行完。

使用goroutine创建并发任务的优点在于它可以提高程序的执行效率,同时还可以避免阻塞其他线程或者进程的执行。因此,在Go中使用goroutine是非常常见的。