golang的初始化

Go程序的初始化总是从main包下的main方法开始的,如果main包中引入了其他的包,则会首先导入其他的包,并执行对应包中的inti()方法,若只需要某个包中的init函数,不需要其中的其他方法则可以通过以下方式实现:

_ "net/http"

Go文件的初始化顺序:

1 从main方法开始,若包含其他的包,首先引入其他包
2 若其他包也引用了别的包,则首先引入其他的包,然后创建和初始化这个包的常量和变量,但是包的引用不能出现循环引用的情况,即包A import B |包B import C | C import A,不能出现引用的闭环。
3 一个文件中的多个init()方法按照出现的顺序依次执行。
4 在main包的所有包变量、包常量被创建和初始化,且只有在init()方法被执行后,才会进入mian.main()函数

Goroutine的创建

go语句会在当前Goroutine对应函数返回之前创建新的Goroutine

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值