摘要:
1 golang常见数据结构实现 1.1 链表 举单链表的例子,双向链表同理只是多了pre指针。 定义单链表结构: type LinkNode struct { Data int64 NextNode *LinkNode} 构造链表及打印链表: func main() { node := new( 阅读全文
摘要:
简介 每个版本的Golang的垃圾回收都在不断优化中,而且方法和策略都在变化,因此这里只是总结出以下几个关键点: 什么样的数据需要GC 触发GC的条件是什么 GC时发生了什么 能否从代码层面上提高GC的效率 GC的基本流程 Golang在确定的时间,或者内存分配到达一定程度时,进行GC。GC时,会停 阅读全文
摘要:
什么是协程? Go协程(Goroutine)是与其他函数或方法同时运行的函数或方法。可以认为Go协程是轻量级的线程。与创建线程相比,创建Go协程的成本很小。因此在Go中同时运行上千个协程是很常见的。 Go协程对比线程的优点 与线程相比,Go协程的开销非常小。Go协程的堆栈大小只有几kb,它可以根据应 阅读全文