我在互联网上找到了很多关于互斥锁的教程,然后在我尝试构建自己的示例之后。看看我下面的代码片段。
package main
import (
"fmt"
"sync"
"time"
)
func main() {
thread := new(sync.Mutex)
y := 0
for i := 0; i < 10; i++ {
go func() {
y = i
thread.Lock()
fmt.Println(y)
thread.Unlock()
}()
}
time.Sleep(100000)
}
作为输出,我只有 10 个,但我的目标是获得 1、2、3、4...10 个。我怎样才能做到这一点?或者我的样本没有任何意义?
猛跑小猪
相关分类