Commit 19e80b08 authored by Rob Pike's avatar Rob Pike

gob: add UpdateMemStats calls to malloc counter

R=golang-dev, dsymonds
CC=golang-dev
https://golang.org/cl/4808071
parent ee9168d5
......@@ -484,7 +484,7 @@ func isZero(val reflect.Value) bool {
case reflect.Uint, reflect.Uint8, reflect.Uint16, reflect.Uint32, reflect.Uint64, reflect.Uintptr:
return val.Uint() == 0
}
panic("unknown type in isZero" + val.Type().String())
panic("unknown type in isZero " + val.Type().String())
}
// encGobEncoder encodes a value that implements the GobEncoder interface.
......
......@@ -53,6 +53,7 @@ func TestCountEncodeMallocs(t *testing.T) {
var buf bytes.Buffer
enc := NewEncoder(&buf)
bench := &Bench{7, 3.2, "now is the time", []byte("for all good men")}
runtime.UpdateMemStats()
mallocs := 0 - runtime.MemStats.Mallocs
const count = 1000
for i := 0; i < count; i++ {
......@@ -61,6 +62,7 @@ func TestCountEncodeMallocs(t *testing.T) {
t.Fatal("encode:", err)
}
}
runtime.UpdateMemStats()
mallocs += runtime.MemStats.Mallocs
fmt.Printf("mallocs per encode of type Bench: %d\n", mallocs/count)
}
......@@ -77,6 +79,7 @@ func TestCountDecodeMallocs(t *testing.T) {
}
}
dec := NewDecoder(&buf)
runtime.UpdateMemStats()
mallocs := 0 - runtime.MemStats.Mallocs
for i := 0; i < count; i++ {
*bench = Bench{}
......@@ -85,6 +88,7 @@ func TestCountDecodeMallocs(t *testing.T) {
t.Fatal("decode:", err)
}
}
runtime.UpdateMemStats()
mallocs += runtime.MemStats.Mallocs
fmt.Printf("mallocs per decode of type Bench: %d\n", mallocs/count)
}
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment