共计 602 个字符,预计需要花费 2 分钟才能阅读完成。
在 Go 语言中,可以使用 goroutine 来实现多线程。goroutine 是 Go 语言中的轻量级线程,可以同时运行在一个操作系统线程上。
要创建一个 goroutine,只需要在函数调用前加上关键字 go 即可,例如:
func main() {go func1() // 创建 goroutine 并执行函数 func1()
go func2() // 创建 goroutine 并执行函数 func2()
// 等待所有 goroutine 执行完毕
time.Sleep(time.Second)
}
func func1() {// 第一个 goroutine 的逻辑代码}
func func2() {// 第二个 goroutine 的逻辑代码}
在上面的例子中,我们在 main 函数中创建了两个 goroutine,并分别执行了函数 func1() 和 func2()。由于 goroutine 是并发执行的,所以这两个函数可以同时运行。
如果需要等待所有的 goroutine 执行完毕,可以使用 time 包中的 Sleep 函数进行等待。在上面的例子中,我们等待了 1 秒钟,使得主线程等待两个 goroutine 执行完毕后再退出。
需要注意的是,每个 goroutine 都运行在相同的地址空间,因此它们可以直接访问共享的变量。为了避免多个 goroutine 对共享变量的并发访问导致的竞态条件问题,可以使用 Go 语言提供的互斥锁(sync.Mutex)等机制进行同步操作。
丸趣 TV 网 – 提供最优质的资源集合!
正文完