golang中使用sync.Map的方法
背景go中map数据结构不是线程安全的,即多个goroutine同时操作一个map,则会报错,因此go1.9之后诞生了sync.Mapsync.Map思路来自java的ConcurrentHashMap接口sync.map就是1.9版本...
背景go中map数据结构不是线程安全的,即多个goroutine同时操作一个map,则会报错,因此go1.9之后诞生了sync.Mapsync.Map思路来自java的ConcurrentHashMap接口sync.map就是1.9版本...
使用VSCode对Golang程序进行调试时会遇到数据截断问题,string只显示前64个字符,array只显示前64个数据。经查dlv是支持以参数方式来控制的。发现VSCode的Golang插件里面有个叫...
VS Code是微软开源的一款编辑器,插件系统十分的丰富。本文就介绍了如何使用VS Code搭建Go语言开发环境。VS Code配置Go语言开发环境说在前面的话,Go语言是采用UTF8编码的,理论...
本文主要介绍go语言静态库的编译和使用方法,以windows平台为例,linux平台步骤一样,具体环境如下:>echo %GOPATH%E:\share\git\go_practice\
>echo %GOROOT%C:\Go\
>tree /F %GOPAT...
每个语言都有自己特色的编码规范,学习该语言的命名规范,能让你写出来的代码更加易读,更加不容易出现一些低级错误。本文根据个人编码习惯以及网络上的一些文章,整理了一些大家能...
本文旨在快速介绍Go标准库中读取文件的许多选项。
在Go中(就此而言,大多数底层语言和某些动态语言(如Node))返回字节流。 不将所有内容自动转换为字符串的好处是,其中之一是避免昂...
go第三方库 github.com/spf13/viper 实现了对配置文件的读取并注入到结构中,好用方便。其中以viperInstance := viper.New() // viper实例viperInstance.WatchConfig()viper...
当前的实践中问题在项目之间依赖的时候我们往往可以通过mock一个接口的实现,以一种比较简洁、独立的方式,来进行测试。但是在mock使用的过程中,因为大家的风格不统一,而且很多使...
我的在线博客:http://golang.iswbm.com
我的 Github:github.com/iswbm/GolangCodingTime 1. 对方法的调用限制接口是一组固定的方法集,由于静态类型的限制,接口变量有时仅能调用...
前言都说go标准库实用,Api设计简洁。这次就用go 标准库中的net/http包实现一个简洁的http web服务器,包括三种版本。v1最简单版直接使用http.HandleFunc(partern,function(htt...
Gogland 是 JetBrains 公司推出的Go语言集成开发环境。Gogland 同样基于 IntelliJ 平台开发,支持 JetBrains 的插件体系。官方:https://www.jetbrains.com/go/。关于 Goland...
现在Go1.14都已经发布好些日子了,之前发的Go环境搭建教程早已过时,只是因为时间问题一直没来得及更新这次怀着愧疚的心情,在凌晨四点时,将这教程进行一个更新注意:本教程最大的好...
Go语言的标准库里提供两种类型的计时器Timer和Ticker。Timer经过指定的duration时间后被触发,往自己的时间channel发送当前时间,此后Timer不再计时。Ticker则是每隔duration时...
Hi,大家好,我是明哥。在自己学习 Golang 的这段时间里,我写了详细的学习笔记放在我的个人微信公众号 《Go编程时光》,对于 Go 语言,我也算是个初学者,因此写的东西应该会比较适合...
这是一个基于Go语言开发的单点登录系统,实现手机号注册、手机号+验证码登录、手机号+密码登录、账号登出等功能,用户认证采用cookie和jwt两种方式。收发短信相关方法已提供,仅...
对于一般的语言使用者来说 ,20% 的语言特性就能够满足 80% 的使用需求,剩下在使用中掌握。基于这一理论,Go 基础系列的文章不会刻意追求面面俱到,但该有知识点都会覆盖,目的是带...
1,命令行查看 Go 开发包的环境变量配置信息
命令行说明如下:第 1 行,执行 go env 指令,将输出当前 Go 开发包的环境变量状态。
第 2 行,GOARCH 表示目标处理器架构。
第 3 行,GOB...
前言VSCode现在已经发展的相当完善,很多语言都比较推荐使用其来编写,Go语言也一样,前提你电脑已经有了Go环境和最新版本的VSCode插件安装直接在拓展插件中搜索Go,就可以安装Go插...
让你成功安装vscode中go的相关插件注意:该演示环境是windows环境,linux和mac环境操作思路一样vscode中有很多go的相关插件,非常好用如下:gocode
gopkgs
go-outline
go-symbols
g...
Go链接库系统的难用可谓是人尽皆知,不同Go版本编译出来的不兼容,而且只支持GNU的,不能编译出Windows上的dll和lib。本次有需求是将Go代码编译成32位GNU静态链接库。Go代码编写...
背景最近在开发一个功能时,需要通过 http 协议上报大量的日志内容,但是在 Go 标准库里的 http client 的 API 是这样的:http.NewRequest(method, url string, body io.Reader)b...
一、需求
golang默认的结构体json转码出来,都是根据字段名生成的大写驼峰格式,但是一般我们最常用的json格式是小写驼峰或者小写下划线,因此,我们非常需要一个统一的方法去转换,...
1、前提1.1 docker 安装elasticsearch查询elasticsearch 版本docker search elasticsearch将对应的版本拉到本地docker.elastic.co/elasticsearch/elasticsearch:7.3.0创建...
限流器是服务中非常重要的一个组件,在网关设计、微服务、以及普通的后台应用中都比较常见。它可以限制访问服务的频次和速率,防止服务过载,被刷爆。限流器的算法比较多,常见的比...
最近开始学Go语言,但是在使用VS Code 编写Go的时候出现了插件无法下载的问题。最初我的解决办法也是从github下载再安装,但是我并不喜欢这种做法,因为我要在多台pc上使用VS Cod...