【Golang】使用goroutine来输出2组斐波那契数列,一组输出前10个,一组输出前5个(约126字)

代码

package main

import (
    "fmt"
    "sync"
)

func fibonacci(n int, wg *sync.WaitGroup) {
    defer wg.Done()

    x, y := 0, 1
    for i := 0; i < n; i++ {
        fmt.Println(x)
        x, y = y, x+y
    }
}

func main() {
    var wg sync.WaitGroup
    wg.Add(2)

    go fibonacci(10, &wg)
    go fibonacci(5, &wg)

    wg.Wait()
}

使用go关键字启动了两个goroutine,分别计算斐波那契数列的前10个和前5个数字。通过使用goroutine,我们可以并行地执行这两个计算任务,而不需要显式地创建和管理线程。

补充

goroutine是Go语言中轻量级的并发执行单元,可以同时执行多个goroutine,而不需要显式地管理线程的生命周期。

goroutine由Go运行时(runtime)进行调度,可以在并发编程中实现并行执行。

THE END
喜欢就支持一下吧
点赞0 分享
评论 抢沙发

请登录后发表评论

    暂无评论内容