1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33package main import ( "fmt" ) func progress(from string, done chan string) { for i := 0; i < 30; i++ { fmt.Printf("%s: %d%% ", from, i) } done <- from } func main() { c := "Channel " done := make(chan string, 26) for i := 'A'; i <= 'Z'; i++ { go progress(c+string(i), done) } for i := 0; i < 26; i++ { select { case msg := <- done: fmt.Println(msg, " Done!") } } } // ..... // Channel G: 28% // Channel G: 29% // Channel G Done! // Channel X: 29% // Channel X Done!



젤 늦게 나온 X가 오늘 밥사기 ㅇㅅㅇ;;