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
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)