我是靠谱客的博主 精明电脑,最近开发中收集的这篇文章主要介绍golang once实例,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

查阅了once的资料,主要控制某段代码只执行一次,结合项目看了下,用在循环里面只需要执行一次的代码,其他场景还没有想到,看代码:

package test

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

var once sync.Once

func Oncetest() {
	var wg =&sync.WaitGroup{}//waitgroup是struct类型,使用时只需将其实例化
	for i, v := range make([]string, 10) {
		once.Do(onces)
		fmt.Println("count:", v, "---", i)
	}
	for i := 0; i < 10; i++ {
		wg.Add(1)
		go func() {
			once.Do(onced)
			fmt.Println(i)
			wg.Done()
		}()
	}
	wg.Wait()
}
func onces() {
	fmt.Println("print onces")
}
func onced() {
	fmt.Println("onced")
}

func Temptest(){
	var t *int
	p:=1
	t=&pshili

	fmt.Println(t)
	fmt.Println(&p)

}

最后

以上就是精明电脑为你收集整理的golang once实例的全部内容,希望文章能够帮你解决golang once实例所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(57)

评论列表共有 0 条评论

立即
投稿
返回
顶部