C++
Willowwww
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
C++ vs Go
1. 内存管理C++C++的内存分配和释放由malloc管理,空闲内存块被保存在链表中,链表的节点信息和空闲块的信息保存在空闲块的开头; 被释放的内存不会马上交还给操作系统,而是按大小加入不同的链表中以便再次分配,fast_bin, small_bin, large_bin; 当链表中和top chunk都找不到或切割出合适的空闲块时,调用brk()(主分配区),或者mmap分配新的一片内存; 每个线程分配内存时,都会锁定一个分配区,以防止不同线程同时分配的冲突;Go程序启动时会向操作系原创 2020-07-09 22:39:23 · 833 阅读 · 0 评论 -
Linux堆内存管理glibc
1. struct _heap_info, struct malloc_state和struct malloc_chunktypedef struct _heap_info{ mstate ar_ptr; /* Arena for this heap. */ struct _heap_info *prev; /* Previous heap. */ si...原创 2020-05-23 14:59:08 · 334 阅读 · 0 评论
分享