阅读量:1
在Go语言中,可以通过调用runtime.Stack
函数来获取当前Goroutine的堆栈信息。具体的使用方法如下:
package main import ( "fmt" "runtime" ) func main() { go func() { printStack() }() // 确保Goroutine有足够的时间执行 runtime.Gosched() } func printStack() { var buf [4096]byte n := runtime.Stack(buf[:], false) fmt.Println(string(buf[:n])) }
在上面的例子中,我们使用runtime.Stack
函数来获取当前Goroutine的堆栈信息,并打印出来。注意,runtime.Stack
函数的第一个参数是一个字节数组,用来存储堆栈信息;第二个参数表示是否需要将堆栈中的所有Goroutine都打印出来。
运行上述代码,就可以在控制台上看到当前Goroutine的堆栈信息。