Go Rate限流器代码分析

源码分析 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66……

阅读全文

golang类型转换

int –> string 转换函数: fmt.Sprintf:格式化范围 math.MinInt64 -> math.MaxInt64 strconv.Itoa:格式化范围 math.MinInt64 -> math.MaxInt64 strconv.FormatInt:格式化……

阅读全文

git多账户共存

问题 很多开发者都会遇到在自己的电脑上使用不止一个 git 帐号的情况。一般一个是自己的 github 帐号,另一个则是公司的 git 帐号,比如 gitlab、bitbuc……

阅读全文

goroutine并发控制

通信 共享内存 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 func Test() { ordersInfoApp := make([]orderInfoApp, 0, totalCount) var mux sync.Mutex wg := sync.WaitGroup{} for i := 0; i <= 10; i++ { wg.Add(1) go func(pageIndex int) { // do somethine var ordersInfo orderInfoApp mux.Lock() ordersInfoApp = append(ordersInfoApp, ordersInfo) mux.Unlock() wg.Done() }(i) } wg.Wait()……

阅读全文

go get添加进度

go get 比较大的包时会很慢, 可能几分钟或更长, 让人误以为卡死了. 修改 go 源码包,让 go get 显示进度。 修改 git clone 命令, 添加 –progress 选项, 使其输出进度 找到如下代码……

阅读全文

Markdown 基本语法

1. 排版 粗体 斜体 这是一段错误的文本。 引用: 引用 Leanote 官方的话, 为什么要做 Leanote, 原因是… 有充列表: 支持 Vim 支持 Emacs 无序列表: 项目 1 项目 2 2. 图片……

阅读全文