This commit is contained in:
jaywcjlove 2022-11-21 16:04:43 +08:00
parent 32af5af854
commit 3b3e6f3eb8

View File

@ -401,7 +401,7 @@ for _, num := range nums {
fmt.Println("sum:", sum) fmt.Println("sum:", sum)
``` ```
### While 循环 ### For 循环
```go ```go
i := 1 i := 1
@ -701,22 +701,22 @@ Golang 并发
```go ```go
package main package main
import ( import (
"fmt" "fmt"
"time" "time"
) )
func f(from string) { func f(from string) {
for i := 0; i < 3; i++ { for i := 0; i < 3; i++ {
fmt.Println(from, ":", i) fmt.Println(from, ":", i)
} }
} }
func main() { func main() {
f("direct") f("direct")
go f("goroutine") go f("goroutine")
go func(msg string) { go func(msg string) {
fmt.Println(msg) fmt.Println(msg)
}("going") }("going")
time.Sleep(time.Second) time.Sleep(time.Second)
fmt.Println("done") fmt.Println("done")
} }
``` ```
@ -728,23 +728,23 @@ func main() {
```go ```go
package main package main
import ( import (
"fmt" "fmt"
"sync" "sync"
"time" "time"
) )
func w(id int, wg *sync.WaitGroup) { func w(id int, wg *sync.WaitGroup) {
defer wg.Done() defer wg.Done()
fmt.Printf("%d starting\n", id) fmt.Printf("%d starting\n", id)
time.Sleep(time.Second) time.Sleep(time.Second)
fmt.Printf("%d done\n", id) fmt.Printf("%d done\n", id)
} }
func main() { func main() {
var wg sync.WaitGroup var wg sync.WaitGroup
for i := 1; i <= 5; i++ { for i := 1; i <= 5; i++ {
wg.Add(1) wg.Add(1)
go w(i, &wg) go w(i, &wg)
} }
wg.Wait() wg.Wait()
} }
``` ```