MIT6.824 分布式系统实验 (6)

golang里的main函数是程序的入口函数,main函数返回后,程序也就结束了。golang还有另外一个特殊的函数init函数,先于main函数执行,实现包级别的一些初始化操作。

init函数的主要作用:

初始化不能采用初始化表达式初始化的变量。

程序运行前的注册。

实现sync.Once功能。

其他

init函数的主要特点:

init函数先于main函数自动执行,不能被其他函数调用;

init函数没有输入参数、返回值;

每个包可以有多个init函数;

包的每个源文件也可以有多个init函数,这点比较特殊;

同一个包的init执行顺序,golang没有明确定义,编程时要注意程序不要依赖这个执行顺序。

不同包的init函数按照包导入的依赖关系决定执行顺序。

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/zwpxsg.html