进击的包籽

关注

go 协程控制之sync.Once{}

进击的包籽

关注

阅读 80

2022-07-27

package main

import (
"fmt"
"sync"
"time"
)

//协程并发控制,只执行一次
var num = 0
var once = sync.Once{}

func main() {
for i := 0; i <= 100; i++ {

go once.Do(addNum)
}

time.Sleep(time.Second*10)
fmt.Println(num)
}

func addNum() {

num = num + 1
}

 



相关推荐

颜娘娘的碎碎念

Golang中 sync.Once 应用

颜娘娘的碎碎念 156 0 0

janedaring

sync.Once 短小精悍

janedaring 50 0 0

绪风

Go sync.Once:简约而不简单的并发利器

绪风 89 0 0

晒大太阳了

go 协程控制之context.WithTimeout的使用

晒大太阳了 89 0 0

尤克乔乔

详解并发编程之sync.Once的实现(附上三道面试题)

尤克乔乔 133 0 0

Silence潇湘夜雨

go程控制

Silence潇湘夜雨 52 0 0

年迈的代码机器

go 协程之WaitGroup超时控制

年迈的代码机器 76 0 0

水沐由之

【Go编程语言】流程控制

水沐由之 110 0 0

caoxingyu

11.Go-流程控制

caoxingyu 50 0 0

非宁静不致远

Go语言基础三 流程控制

非宁静不致远 183 0 0

精彩评论(0)

0 0 举报