C'est La Vie

    人生无彩排,每一天都是现场直播!

    Go语言的并发编程

    i intGo语言中原生引入了协程,可以通过channel实现协程间通信。 示例代码如下: package m […]

    i intGo语言中原生引入了协程,可以通过channel实现协程间通信。

    示例代码如下:

    package main
    
    import (
    	"fmt"
    )
    
    func myFunc(c chan int, i int) {
    	fmt.Printf("from myFunc %dn", i)
    	c <- 1
    	defer close(c)
    }
    
    func wait(c chan int) {
    	hasMore := true
    	for hasMore {
    		if _, hasMore = <-c; hasMore {
    		}
    	}
    }
    
    func main() {
    	c := make(chan int)
    	for i := 0; i < 100; i ++ {
    		go myFunc(c, i)
    	}
    	wait(c)
    }

    发表回复

    您的电子邮箱地址不会被公开。 必填项已用*标注