查看goroutine (579)

本文阅读 1 分钟
首页 golang 正文
使用pprof(建议开一个专题讲pprof使用)
package main
 
import (
  "net/http"
  "runtime/pprof"
)
 
var quit chan struct{} = make(chan struct{})
 
func f() {
  <-quit
}
 
func handler(w http.ResponseWriter, r *http.Request) {
  w.Header().Set("Content-Type", "text/plain")
 
  p := pprof.Lookup("goroutine")
  p.WriteTo(w, 1)
}
 
func main() {
  for i := 0; i < 10000; i++ {
    // 开启10000个协程
    go f()
  }
 
  http.HandleFunc("/", handler)
  // 访问http://localhost:11181/,我们就可以得到所有goroutine的信息
  http.ListenAndServe(":11181", nil)
}

参考资料

https://www.cnblogs.com/wangxusummer/p/4054564.html

本文来自投稿,不代表本站立场,如若转载,请注明出处:
了解中间件吗?有什么好处?
« 上一篇 09-17
Go 高并发的特点
下一篇 » 09-17

发表评论

发表评论