From 7a1fff850415f17c604fc91a68401d0b2e0cecf5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=88=98=E7=A5=A5=E8=B6=85?= Date: Tue, 3 Oct 2023 21:41:03 +0800 Subject: [PATCH] =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E6=B5=8B=E8=AF=95=E7=94=A8?= =?UTF-8?q?=E4=BE=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- internal/utils/linkedlist/list_test.go | 21 ++++++++++++++++++++- 1 file changed, 20 insertions(+), 1 deletion(-) diff --git a/internal/utils/linkedlist/list_test.go b/internal/utils/linkedlist/list_test.go index 690a823..c60caae 100644 --- a/internal/utils/linkedlist/list_test.go +++ b/internal/utils/linkedlist/list_test.go @@ -5,6 +5,7 @@ package linkedlist_test import ( "github.com/TeaOSLab/EdgeNode/internal/utils/linkedlist" "runtime" + "strconv" "testing" ) @@ -33,6 +34,25 @@ func TestNewList_Memory(t *testing.T) { t.Log(count) } +func TestNewList_Memory_String(t *testing.T) { + var stat1 = &runtime.MemStats{} + runtime.ReadMemStats(stat1) + + var list = linkedlist.NewList[string]() + for i := 0; i < 1_000_000; i++ { + var item = &linkedlist.Item[string]{} + item.Value = strconv.Itoa(i) + list.Push(item) + } + + runtime.GC() + + var stat2 = &runtime.MemStats{} + runtime.ReadMemStats(stat2) + t.Log((stat2.HeapInuse-stat1.HeapInuse)>>20, "MB") + t.Log(list.Len()) +} + func TestList_Push(t *testing.T) { var list = linkedlist.NewList[int]() list.Push(linkedlist.NewItem(1)) @@ -82,4 +102,3 @@ func BenchmarkList_Add(b *testing.B) { list.Push(item) } } -