推荐用 stackedit 导出后看,文章中有不少 mermaid 图表,ghost 博客不支持展示。原始的 markdown 保存在:这里
[https://github.com/cch123/golang-notes/blob/master/scheduler.md]
写得稍微有点乱,主要是按自己看代码的顺序来记录的,也不是出书,就这样吧。
PS: 新人不推荐刚学 Golang 就去看调度器代码,这部分代码个人觉得写得很乱。
调度
基本数据结构
goroutine
18 年已经到 6
月份了,定目标可能有点太晚了,不过有总比没有强,作为一个硕士毕业已经工作四年的程序员,切实地感觉到了时间的重要性,需要按照规划来用,不能像年轻人那样挥霍了。
1. 完成 Golang 的大部分源代码阅读,并完成 golang-notes
[http://github.com/cch123/golang-notes]
2. 完成 redis 3.0 的源代码阅读并有总结产出
3. 完成 nginx 的源代码阅读并有总结产出,这个坑遗留得有点久,14
最近在看的 《concurrency in go》 里有这么一个例子:
package main
import (
"fmt"
"sync"
"sync/atomic"
"time"
)
func main() {
cadence := sync.NewCond(&sync.Mutex{})
go func() {
for range time.Tick(1 * time.Millisecond) {
cadence.Broadcast()
}
}()
takeStep := func(
最近在写 golang-notes 的时候,看到 hexo 的 blog 支持直接展示 plantuml 和 mermaid
图表,折腾了一晚上发现并不是很好用。。。这些功能都是以插件形式支持,但在每个 blog
主题下又都需要自己配置,主题显然也没有什么统一的规范,自己用的话还是会碰到蛋疼的问题。此外 hexo 也不支持直接把图片上传到自己的 blog
(别跟我说传什么七牛 cdn 之类的,几年后要是人挂了,你这就蛋疼了)。
虽然 ghost 已经商业化,且官网直接把 download
软件工程发展了这么多年,直到现如今,业界还是比较喜欢讨论 TDD [https://www.zhihu.com/question/37623307],BDD
[https://en.wikipedia.org/wiki/Behavior-driven_development],DDD
[https://www.zhihu.com/question/25089273/answer/69859648]。
虽然最后那个和前两个不太像是同一个维度的东西,不过因为都是
xDD,我们就先放在一起了嗯。每一种理论都有不少拥趸和践行者,都希望在各自的不归路上一路走到黑。