源码分析
文章平均质量分 76
Khalid Jobs
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
go 协程池 ants库分析
简介相比于创建多个线程,goroutine 更轻量、资源占用更少、切换速度更快、无线程上下文切换开销更少。但是受限于资源总量,系统中能够创建的 goroutine 数量也是受限的。默认每个 goroutine 占用 8KB 内存,一台 8GB 内存的机器满打满算也只能创建 8GB/8KB = 1000000 个 goroutine,更何况系统还需要保留一部分内存运行日常管理任务,go 运行时需要内存运行 gc、处理 goroutine 切换等。使用的内存超过机器内存容量,系统会使用交换区(swap),导原创 2021-10-30 15:34:06 · 1371 阅读 · 0 评论 -
go net/http 基础解析
整体的类图1. 我们调用的http.ListenAndServe会生成一个Server对象,这个对象会通过ListenAndServer创建一个监听连接(底层应该就是一个监听socket),然后把这个传递给Serve函数,Serve函数会调用accept开始监听,接受到请求后,会生成一个请求连接(底层应该就是一个连接socket)2. Server生成请求连接后,会调用其server函数,开协程处理这个函数3. conn.server处理的过程中,主要会封装出一个Server..原创 2021-10-27 20:34:36 · 1282 阅读 · 0 评论
分享