首页 > 其他分享 >go闭包和传参的区别

go闭包和传参的区别

时间:2023-01-28 22:22:28浏览次数:36  
标签:闭包 传参 arr Second time go

问题: 为啥包一层输出的就有问题了

func main() {
	arr := []int{1, 2, 3}
	for _, v := range arr {
		go func() {
			println(v)
		}()
	} // 3 3 3
	time.Sleep(time.Second)
	for _, v := range arr {
		go println(v)
	} // 1 2 3
	time.Sleep(time.Second / 10)
}

闭包和传参的区别
包一层成了闭包 不包一层 值传递

标签:闭包,传参,arr,Second,time,go
From: https://www.cnblogs.com/iiiiiher/p/17071394.html

相关文章

  • Go语言开发环境:Goland安装
    一、下载安装开发环境goland:​​https://www.jetbrains.com/go/​​go语言sdk(go的标准库):​​https://golang.google.cn/dl/​​:安装sdk的时候,注意安装的位置,后面要用到,我这......
  • 手把手教你搭建mongodb分片集群
    本章用的自己的电脑win10系统 因为工作上的环境也是win的 就没在虚拟机上玩 (ps:其实上面环境都大同小异)在MongoDB(版本6.xx)中,分片是指将collection分散存储到不同......
  • C# 闭包类对弱引用的坑
    闭包、弱引用的简单概念,大佬们描述的很多,我引用下:理解C#中的闭包-黑洞视界-博客园(cnblogs.com)C#弱引用(WeakReference)-简书(jianshu.com)组里小伙伴报了个......
  • Go第七章:Gin框架学习
    项目建立须知 通过Goland建立gin项目,将Envrionment设置成如下GOPROXY=https://goproxy.cn,direct 执行以下指令拉取Gin代码goget-ugithub.com/gin-gonic/gin ......
  • Google Earth Engine (GEE)——如何统计指定区域的像素数量和总量
    很多时候我们想统计研究区的像素数量,但是用错了函数,本来用ee.reducer.sum(),ee.reducer.count()混淆使用,我们发现有很多人要统计像素数量,但却统计成了总量,所以我们首先要看......
  • go 环境搭建
    SDK下载下载地址:https://golang.google.cn/dl/https://studygolang.com/dl这两个个那个下载快用那个都是镜像,官网被墙了(你懂得)官网地址https://golang.org/dl/然......
  • Go 实现Rabbitmq 简单模式
       rabbitmq.go文件代码如下packageRabbitMQimport("fmt""github.com/streadway/amqp""log")constMQURL="amqp://lyc:[email protected]:56......
  • Go mod 各类问题及解决办法
    [going@VM-24-3-centosserver]$gorunmain.gomain.go:9:2:norequiredmoduleprovidespackagegithub.com/grpc-demo/helloworld;toaddit:gogetgith......
  • 【godis】skiplist
    skiplist前言:在看代码时看到ZSKIPLIST_MAXLEVEL=32,当时并不了解ZSKIPLIST_P的作用,想着用2分法不应该层数是64吗?书上和他人的代码都是基于5.0的(5.0上是64),于......
  • 12--go mod和go vendor的区别 | 青训营笔记
    这是我参与「第五届青训营」伴学笔记创作活动的第12天背景在家安装的环境可能路径和环境变量配的有些问题,导致项目import的包全部标红,gomodtidy显示导入包不在路径,......