计划
第1周 | LEC 1: Introduction |
---|---|
第2周 | Lab 1: MapReduce |
第3周 | LEC 2: RPC and Threads |
第4周 | LEC 3: GFS |
第5周 | Lab 2: Raft |
第6周 | LEC 4: Primary-Backup Replication, |
第7周 | LEC 5: Go, Threads, and Raft |
本次是第三次, RPC and Threads
概述
这次的视频上老师介绍了Go语言. Go有以下特点
- 有GC, 内存自动回收
- 有指针可以操作内存, 但是指针没有C语言那么强, 是安全指针.
- 没有class, 只有struct, 默认传值调用, 传址调用要用&.
- goroutine是特色, goroutine是协程, 比进程更轻量级, 一个程序可以支持10w goroutine
- channel是管道, 使用通信的方式共享内存
- 接口不需要显示继承, 只要实现了接口就可以直接使用
Go基本入门, channel部分情景使用还有点问题.
关于Goroutine原理, 参考https://segmentfault.com/a/1190000018150987
Go在线课程: https://tour.golang.org/welcome