package socks5 import ( "testing" "time" "github.com/azoic/wormhole-server/pkg/memory" "github.com/sirupsen/logrus" ) func BenchmarkBufferPool(b *testing.B) { logger := logrus.New() logger.SetLevel(logrus.ErrorLevel) memConfig := memory.Config{ BufferSizes: []int{512, 1024, 2048, 4096, 8192, 16384, 32768, 65536}, EnableOptimization: true, EnableAutoGC: false, MonitorInterval: time.Minute, } memManager := memory.NewManager(memConfig, logger) defer memManager.Stop() b.ResetTimer() b.RunParallel(func(pb *testing.PB) { for pb.Next() { // 测试不同大小的缓冲区 sizes := []int{512, 1024, 2048, 4096, 8192} for _, size := range sizes { buf := memManager.GetBuffer(size) memManager.PutBuffer(buf) } } }) } func BenchmarkMemoryManagerStats(b *testing.B) { logger := logrus.New() logger.SetLevel(logrus.ErrorLevel) memConfig := memory.Config{ BufferSizes: []int{512, 1024, 2048, 4096}, EnableOptimization: true, EnableAutoGC: false, MonitorInterval: time.Minute, } memManager := memory.NewManager(memConfig, logger) defer memManager.Stop() b.ResetTimer() for i := 0; i < b.N; i++ { _ = memManager.GetOverallStats() } }