眾所周知稿饰,為了獲得正在運行的Golang程序的profile信息砸烦,需要增加如下代碼到main函數中
import _ "net/http/pprof"
func main(){
go func(){
log.Error(http.ListenAndServe(":6060",nil))
}
}
以上代碼會新起一個gorutine搂擦,用來獲取golang程序的profile信息崭孤。
打開瀏覽器輸入 http://localhost:6060/debug/pprof
會出現
/debug/pprof/
profiles:
0 block
135 goroutine
798 heap
0 mutex
35 threadcreate
其中第二項就是goroutine的數量雳灵,這個值一旦很大就預示著這個程序很大可能goroutine泄露棕所。