/images/hugo/avatar.png

Go reflect

1. 反射 Go在标准库中提供的reflect包让Go程序具备运行时的反射能力(reflection,又称为自省)。反射是程序在运行时访问、检测和

Go unsafe包的安全使用模式

1. 类型安全 在Go语言中,我们是无法通过常规语法手段穿透Go在类型系统层面对内存数据的保护的: 1 2 3 4 5 6 7 8 9 10 11 12 func main() { a := 0x12345678 fmt.Printf("0x%x\n", a) var p *byte =

Go 网络编程

Go是自带运行时的跨平台编程语言,Go中暴露给语言使用者的TCP Socket接口是建立在操作系统原生TCP Socket接口之上的。由于Go运

Go 调度器

今天我们来学习一些 Go 程序的调试技巧。 1. 调度器状态的查看方法 Go提供了调度器当前状态的查看方法:使用Go运行时环境变量GODEBUG。 1 2 3 4

Go 汇编反汇编

1. 查看Go程序的汇编代码 查看Go程序的汇编代码有多种方法: 使用objdump工具:objdump -S go二进制文件 使用gdb disassemble 使用go tool