gc

Posted by 夏泽民

go在程序启动时会分配一块虚拟内存地址是连续的内存, 结构如下: spans 512M bitmap 16G arena 512G 这一块内存分为了3个区域, 在X64上大小分别是512M, 16G和512G, 它们的作用如下:



channel

Posted by 夏泽民

https://golang.org/ref/mem 一,初始化过程在这之前,先看下asm_arm64.s中的汇编代码关于启动这块的逻辑 CALL runtime·args(SB) CALL runtime·osinit(SB) CALL runtime·hashinit(SB) CALL runtime·schedinit(SB)



lldb

Posted by 夏泽民

xcode里有内置的Debugger,老版使用的是GDB,xcode自4.3之后默认使用的就是LLDB了。



goroutine实现原理

Posted by 夏泽民

G (goroutine) G是goroutine的头文字, goroutine可以解释为受管理的轻量线程, goroutine使用go关键词创建.



go Vet

Posted by 夏泽民

go vet是一个用于检查Go语言源码中静态错误的简单工具,消灭go vet扫描出的静态错误,有利于提高代码质量和养成良好的编码习惯,常见go vet错误总结如下:



Search

Popular posts

Anything in here will be replaced on browsers that support the canvas element

Recent posts

This blog is maintained by 夏泽民

Get in touch with me at 465474307@qq.com

Subscribe to our mailing list

* indicates required