Simple goroutine not working on Windows

Issue

I’m doing some tests with goroutines just to learn how they work, however it seems they are not running at all. I’ve done a very simple test:

package main

import (
    "fmt"
)

func test() {
    fmt.Println("test")
}

func main() {
    go test()
}

I would expect this to print “test” however it simply doesn’t do anything, no message but no error either. I’ve also tried adding a for {} at the end of the program to give the goroutine time to print something but that didn’t help.

Any idea what could be the issue?

Solution

program execution does not wait for the invoked function to complete

Go statements

Wait a while. For example,

package main

import (
    "fmt"
    "time"
)

func test() {
    fmt.Println("test")
}

func main() {
    go test()
    time.Sleep(10 * time.Second)
}

Output:

test

Answered By – peterSO

Answer Checked By – Senaida (GoLangFix Volunteer)

Leave a Reply

Your email address will not be published.