update
commit
38951777fc
|
@ -0,0 +1,3 @@
|
||||||
|
# stat
|
||||||
|
|
||||||
|
get simple stat for current go command and stat of a pid
|
|
@ -0,0 +1,26 @@
|
||||||
|
package stat
|
||||||
|
|
||||||
|
import "runtime"
|
||||||
|
|
||||||
|
type Profile struct {
|
||||||
|
Alloc uint64
|
||||||
|
TotalAlloc uint64
|
||||||
|
SysMem uint64
|
||||||
|
NumGC uint32
|
||||||
|
}
|
||||||
|
|
||||||
|
func GetProfile() *Profile {
|
||||||
|
var m runtime.MemStats
|
||||||
|
runtime.ReadMemStats(&m)
|
||||||
|
|
||||||
|
return &Profile{
|
||||||
|
Alloc: bToMb(m.Alloc),
|
||||||
|
TotalAlloc: bToMb(m.TotalAlloc),
|
||||||
|
SysMem: bToMb(m.Sys),
|
||||||
|
NumGC: m.NumGC,
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
func bToMb(b uint64) uint64 {
|
||||||
|
return b / 1024 / 1024
|
||||||
|
}
|
|
@ -0,0 +1,18 @@
|
||||||
|
package stat
|
||||||
|
|
||||||
|
import (
|
||||||
|
"fmt"
|
||||||
|
"testing"
|
||||||
|
)
|
||||||
|
|
||||||
|
func TestStat(t *testing.T) {
|
||||||
|
fmt.Printf("%+v\n", GetProfile())
|
||||||
|
buf := make([][]int, 1024)
|
||||||
|
for i := range buf {
|
||||||
|
buf[i] = make([]int, 1024)
|
||||||
|
for j := 0; j < len(buf[i]); j++ {
|
||||||
|
buf[i][j] = 20
|
||||||
|
}
|
||||||
|
}
|
||||||
|
fmt.Printf("%+v\n", GetProfile())
|
||||||
|
}
|
Loading…
Reference in New Issue