べすとえふぉーと

プログラミング等のノート 

Go 使い方メモ ゴルーチン

元がゴルーチンのtest()実行後3秒で終わるので、test()は2まで表示して終了する

package main

import(
    "fmt"
    "time"
)

func main() {
    fmt.Println("Start")

    fmt.Println("normal test")
    test()

    fmt.Println("go routine test")
    go test()

    time.Sleep(3 * time.Second)

    fmt.Println("End")

}

func test() {
    for i := 0; i < 5; i++ {
        fmt.Println(i)
        time.Sleep(1 * time.Second)
    }
}