Question: Exercise 14.3.21: Write a complete Go program whose main function spawns a chain of n goroutines and synchronizes them, without busy wait ing, so that

Exercise 14.3.21: Write a complete Go program whose main function spawns a chain of n goroutines and synchronizes them, without busy wait ing, so that they cooperatively alternate printing ping pong to standard error, where n is given as a command-line argument. Each line must be printed to standard error by a different goroutine, and no goroutine must print more than once. For instance, go run PingPongChain.go 10 1 ping // printed by goroutine 1 2 pong // printed by goroutine 2 3 ping // printed by goroutine 3 4 pong // printed by goroutine 4 5 ping // printed by goroutine 5 6 pong // printed by goroutine 6 7 pinq // printed by goroutine 7 8 pong // printed by goroutine 8 9 ping // printed by goroutine 9 10 pong // printed by goroutine 10 Your program must not contain any race conditions. Do not give more than 25 lines of code
Step by Step Solution
There are 3 Steps involved in it
Get step-by-step solutions from verified subject matter experts
