golang.org被墙
 
用dep ensure安装第三方库的时候总是失败,提示golang.org超时,如果不用代理的话肯定是访问不了的,但是我本地已经开了pgfastss代理而且浏览器上可以访问golang.org,后来调查了下,发现命令行是不能代理的即使开启了全局模式。 网上说可以设置命令行代理,我用pgfast...
13 小时前 阅读(6)
go json解析
 
由于go是静态强类型语言,不像JavaScript那样是动态语言,所以解析json的时候要先定义好解析后的结构体。 以获取豆瓣电影信息接口为例,地址如下: http://api.douban.com/v2/movie/top250?start=0&count=2 应答结...
8 天前 阅读(76)
go log增加日志等级
 
logger package logger import ( "io" "log" "os" ) const ( LTrace = iota LInfo LWarn LError ) var ( Trace *log.Logger ...
8 天前 阅读(33)
go 工作池
 
go工作池,类似如线程池,不断的往池子里丢任务,池子开启多个线程不断的处理任务。go这里其实只是对go chan defer的简单封装。 work/main.go package work import "sync" type Pool struct { wg ...
9 天前 阅读(25)
go queue
 
队列是一个先进先出的数据结构,go语言实现一个队列,为了通用队列的元素使用了interface,通常一个队列有如下方法: * Push:向队列尾部压入一个元素 * Pop:从队列头部弹出一个元素 * Front:获取队列头部元素 * Size:队列的长度 package qu...
9 天前 阅读(25)
go 连接池
 
连接池使用场景如数据库连接,通常为了平衡性能和资源会建立多个数据库连接,将他们放到一个池子中,需要的时候从池子里面取,用完了再归还给池子,如果池子里的资源不够会创建新资源,尽量要避免新建资源的速度大于池子的大小,池子的大小要在获取资源和归还资源之间做到平衡最好, 这样才能避免了频繁的建立和销毁资源,...
9 天前 阅读(43)
go常见排序方法
 
golang排序写法还是蛮简洁的,不管是简单类型还是复杂的结构,倒序排序的时候可能有点奇怪不知道为什么这样设计 package main import ( "fmt" "sort" ) type Person struct { Name string A...
10 天前 阅读(33)
go学习代码片段
 
斐波纳契闭包、非闭包、递归三种实现方法 package main import ( "fmt" ) func finImpl() func() int { i, j := 0, 0 return func() int { if j == 0 { ...
12 天前 阅读(54)
vscode go插件安装失败
 
vscode go插件安装失败 原因是本地没有golang tools,导致其他的插件安装失败,我们可以手动从github上下载。 使用命令查看GOPATH目录: go env GOPATH 找到您的GOPATH目录,我的是 C:\Users\yo...
13 天前 阅读(43)
 
回到顶部