在Go语言中,可以通过调用`runtime.Stack`函数来获取当前Goroutine的堆栈信息。具体的使用方法如下:
```go
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的堆栈信息。