协程
===
这个理论我就不讲了
推荐一篇文章
[http://www.sohu.com/a/237171690\_465221](http://www.sohu.com/a/237171690_465221)
GO是MPG来实现的
![](https://box.kancloud.cn/9bf5d70613621e51f0115ec0edb35fa3_835x586.png)
>每一个线程 下面都有一个 Go自己实现的协程处理器
然后下面就是协程队列
Processor就会依次运行协程
>go会监听这个队列如果一个时间段这个队列数量还是没有发生变化,golang就会吧当前的goroutine放到当前队列的队尾
>当某一个协程被系统中断,processor就会吧这个协程,放到其他空闲的线程上
- Hello World
- UDP
- UDP服务端
- UDP客户端
- UDP广播
- 错误处理
- 编写好的异常处理
- panic和recover
- 并发编程
- Hello Goruntine
- 共享内存并发机制
- RWMutex
- CSP并发机制
- 多路复用和超时控制
- 通道关闭与广播
- Context与任务的取消
- 只运行一次
- 按需任意任务完成
- 所有任务完成
- 补充:range channel注意实现
- 对象池
- sync.Pool临时对象池
- 单元测试
- 表格测试法
- Banchmark
- BDD
- 反射
- 利用反射编写灵活的代码
- Struct Tag
- 万能程序
- 常用架构模式
- Pipe-filter pattern
- Micro Kernel
- 性能分析
- 高性能代码
- sync.MAP分析
- Concurrent Map
- GC友好的代码
- Uber开发风格规范