![](https://img-blog.csdnimg.cn/20201014180756919.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
golang
文章平均质量分 83
taozhang_tt
我所写的,都是我所验证过的。
展开
-
Go Cron 定时任务
原文地址:http://zero-tt.fun/go/cron/说起 Go 的定时任务,不得不学习一波 robfig/cron 包,github地址1. 使用 Demo1.1 每秒钟执行一次package mainimport ( "fmt" "time" "github.com/robfig/cron/v3")func main() { job := cron.New( cron.WithSeconds(), // 添加秒级别支持,默.原创 2021-05-14 17:55:51 · 1224 阅读 · 0 评论 -
Go 指针
普通指针:*T对于任意类型 T,它所对应的指针类型就是 *Tvar i intvar ip *intvar s stringvar sp *stringGo 是强类型,不同类型对应的 *T 不可相互转换、不可相互赋值、不可做比较、普通指针不可参与计算。万能指针:unsafe.Pointerunsafe.Pointer 与 *T 的关系,就好比 interface{} 和 T 的关系,也就是说 unsafe.Pointer 可以承载任意类型的 *T,它们之间可以互相转换,这就赋予了开发者直原创 2021-05-10 19:14:27 · 224 阅读 · 2 评论 -
Mutex 源码浅析& Mutex 演变历程
文章的内容参考了极客时间专栏《Go 并发编程实战课》,结合自己的理解写了一篇总结,原文地址作者将 Mutex 的演进划分成了 4 个阶段:初版使用一个 key 字段标记是否持有锁,以及等待该锁的 goroutine 数量源码下载地址,部分代码片段如下:package syncimport "runtime"// CAS操作,当时还没有抽象出atomic包func cas(val *uint32, old, new uint32) bool// 互斥锁的结构,包含两个字段type原创 2021-04-28 15:05:04 · 347 阅读 · 0 评论