+关注继续查看
package main import ( "log" "net/http" _ "net/http/pprof" "time" ) func main() { go func() { log.Println(http.ListenAndServe(":6060", nil)) }() a := make(chan int) for { time.Sleep(time.Second) go func() { <-a }() } }
package main import ( "log" "net/http" _ "net/http/pprof" "runtime" "sync" ) func main() { go func() { log.Println(http.ListenAndServe(":6060", nil)) }() var mu sync.Mutex var items = make(map[int]struct{}) runtime.SetMutexProfileFraction(5) for i := 0; i < 1000000*1000000; i++ { go func(i int) { mu.Lock() defer mu.Unlock() items[i] = struct{}{} }(i) } }
<br>