go
一朝英雄拔剑起
又是苍生十年劫
展开
-
【已解决】go get 获取不到最新版本问题
场景上传了一个自己的go模块“A” 到github上,在本地第一次使用go get拉取A到本地后,能够正常使用。但是当我对模块A做出修改,push到github上去后,再一次使用go get 拉取,发现无法拉取到更新之后的A解决方法开始我以为是go get 存在缓存,所以清理了本地的包,但是发现没有用。真正的问题在,我使用了代理,我的GOPROXY设置为 https://goproxy.cn,direct了,大概率是这个代理自己有缓存,所以我无法获取到更新之后的模块A。解决方法就是更改GOPROX原创 2021-10-07 09:37:45 · 4405 阅读 · 1 评论 -
ubuntu2004 安装protoc
ubuntu2004 安装protoc# 安装apt install -y protobuf-compiler# 查看版本protoc --versiongRPC官方文档链接如下:https://grpc.io/docs/what-is-grpc/core-concepts/go版本还需要安装一个插件,才能正常编译(因为官方没有go的支持)装好之后,还需要配置一下go的路径,不然找不到插件#插件安装go get github.com/golang/protobuf/protoc-gen原创 2021-09-28 12:47:49 · 354 阅读 · 0 评论 -
golang 通过反射reflect对struct的字段进行set和get
1 使用场景当你定义了一个struct,当对其中每个字段的读取或者写入进行某种操作时,如读取、写入,你需要进行加锁从而达到互斥的目的,亦或是需要进行统计。在不使用反射的情况下,你需要自己为每一个字段编写get和set方法,然后使用代理的方式对get和set方法进行加锁或者统计。当struct的字段数量少的情况小,这种做法是可以进行的,但是如果struct字段数量多,这种方法就会产生大量逻辑上重复的代码,使我们的代码变得不干净。2 反射方式get和set通过反射方式,只需要两个函数,即可对所有的字段进原创 2021-08-20 11:19:49 · 1404 阅读 · 0 评论