Files
EdgeNode/internal/utils/zero/zero_test.go

44 lines
880 B
Go
Raw Permalink Normal View History

2024-05-17 18:30:33 +08:00
// Copyright 2021 GoEdge goedge.cdn@gmail.com. All rights reserved.
2024-05-11 09:23:54 +08:00
package zero_test
import (
"runtime"
"testing"
2024-07-27 15:42:50 +08:00
"github.com/TeaOSLab/EdgeNode/internal/utils/zero"
)
func TestZero_Chan(t *testing.T) {
var stat1 = &runtime.MemStats{}
runtime.ReadMemStats(stat1)
2024-05-11 09:23:54 +08:00
var m = make(chan zero.Zero, 2_000_000)
for i := 0; i < 1_000_000; i++ {
2024-05-11 09:23:54 +08:00
m <- zero.New()
}
var stat2 = &runtime.MemStats{}
runtime.ReadMemStats(stat2)
t.Log(stat2.HeapInuse, stat1.HeapInuse, stat2.HeapInuse-stat1.HeapInuse, "B")
t.Log(len(m))
}
func TestZero_Map(t *testing.T) {
var stat1 = &runtime.MemStats{}
runtime.ReadMemStats(stat1)
2024-05-11 09:23:54 +08:00
var m = map[int]zero.Zero{}
for i := 0; i < 1_000_000; i++ {
2024-05-11 09:23:54 +08:00
m[i] = zero.New()
}
var stat2 = &runtime.MemStats{}
runtime.ReadMemStats(stat2)
t.Log((stat2.HeapInuse-stat1.HeapInuse)/1024/1024, "MB")
t.Log(len(m))
_, ok := m[1024]
t.Log(ok)
}