github.com/EngineerKamesh/gofullstack@v0.0.0-20180609171605-d41341d7d4ee/volume1/section4/racedemo/racedemo.go (about) 1 // An example of a data race condition. 2 // Execute the program like so: "go run -race racedemo.go" to detect the race condition. 3 package main 4 5 import "fmt" 6 7 var greetings string 8 var howdyDone chan bool 9 10 func howdyGreetings() { 11 12 greetings = "Howdy Gopher!" 13 howdyDone <- true 14 } 15 16 func main() { 17 18 howdyDone = make(chan bool, 1) 19 go howdyGreetings() 20 greetings = "Hello Gopher!" 21 fmt.Println(greetings) 22 <-howdyDone 23 }