摘要: 1. 切片的结构 一个切片在运行时由指针、长度和容量三部分构成 指针指向切片元素对应的底层数组元素的地址;长度对应切片中元素的数目,长度不能超过容量;容量一般是从切片的开始位置到底层数组的结尾位置的长度 2. 切片的底层原理 在编译时构建抽象语法树阶段会将切片构建为如下类型: type Slice 阅读全文
posted @ 2022-03-26 22:03 aganippe 阅读(804) 评论(0) 推荐(0) 编辑
摘要: 1. 什么是httprouter 较为流行的go web框架大多使用httprouter,或者是基于httprouter的变种对路由进行支持。 httprouter使用的是显式匹配,所以在路由设计的时候会存在一些路由冲突的问题: GET /user/info/:name GET /user/:id 阅读全文
posted @ 2022-03-26 15:59 aganippe 阅读(693) 评论(0) 推荐(1) 编辑
摘要: 转载:https://zhuanlan.zhihu.com/p/27917262 以一个简单的channel应用开始,使用goroutine和channel实现一个任务队列,并行处理多个任务。 func main(){ //带缓冲的channel ch := make( chan Task, 3) 阅读全文
posted @ 2022-03-26 10:32 aganippe 阅读(1400) 评论(0) 推荐(0) 编辑