
golang学习
langzi989
每个现象后面都隐藏着一个本质,关键在于我们是否去挖掘它
展开
-
Golang 协程优雅退出
关于golang中消费协程优雅退出的写法,写了一个简单的小例子进行记录一下。使用场景:1、生成协程生产数据到管道中2、消费协程在管道中取数据进行处理通过捕捉特定信号对程序进行相关处理,当某个信号进行触发的时候,主协程将向各个协程发送退出指令,当数据管道处理完成时,若接收到退出指令 将结束协程的执行package mainimport ( "fmt" "git.code.oa.co...原创 2020-02-23 11:39:31 · 1716 阅读 · 0 评论 -
优雅实现golang默认参数
原生的golang中,函数定义不支持默认参数。但是在实际开发过程中,经常会有些参数用户可以不关心或者可以根据实际情况去定制实现,这个时候需要使用到默认参数,在C++中,函数的定义和实现本来就支持默认参数,如果需要在golang中实现默认参数,可以参考一下做法:package mainimport "fmt"// 可以由用户自定义的参数集合type Option struct { ...原创 2020-01-11 11:47:19 · 11779 阅读 · 0 评论 -
golang值类型与引用类型的区别
1、golang值类型与引用类型的区别1.1 本质存储区别值类型与引用类型的区别主要在于:值类型的变量: 存储当前类型的存储的数据。值类型包括数值类型、bool、string、数组、struct结构体引用类型的变量:存储地址,该地址对应的空间才是真正存储的数据。引用类型包括:指针、slice切片、管道chan、map、以及interface等类型。注意:golang中的引用类型和值...原创 2020-01-10 20:51:44 · 2586 阅读 · 0 评论