package starmap import ( "fmt" "math/rand" "testing" "time" ) type Miaomiao struct { Sakura string Fuck int Mimi bool } func Test_Remote(t *testing.T) { Store("nmb", 22222) server, err := NewServer("127.0.0.1:45678") server.Register(&Miaomiao{}) fmt.Println(err) client, err := NewClient("127.0.0.1:45678") client.SetKeepAlive(false) fmt.Println(err) _ = server fmt.Println(client.Get("nmb")) fmt.Println(client.Store("maio", Miaomiao{"sss", 222, true})) fmt.Println(client.Get("maio")) } func (cat *Miaomiao) GetName() string { return "miaomiao" } func Test_Remote2(t *testing.T) { server, err := NewServer("127.0.0.1:45678") server.Register(&Miaomiao{}) fmt.Println(err) client, err := NewClient("127.0.0.1:45678") //client.SetKeepAlive(false) fmt.Println(err) _ = server fmt.Println(client.StoreMap(&Miaomiao{"suki", 1127, false})) fmt.Println(client.GetMap("miaomiao")) } func Test_Math(t *testing.T) { wg := NewWaitGroup(5000) rand.Seed(time.Now().UnixNano()) waitfn := func(wg *WaitGroup, num int) { defer wg.Done() fmt.Println(num) time.Sleep(time.Second * time.Duration(2+rand.Intn(3))) } for i := 0; i <= 3214670; i++ { wg.Add(1) if i == 34567 { wg.SetMaxWaitNum(50000) } if i == 123456 { wg.SetMaxWaitNum(210456) } if i == 323456 { wg.SetMaxWaitNum(2104562) } go waitfn(&wg, i) } fmt.Println("Waiting~~~~~~~~~~") wg.Wait() fmt.Println(wg.allCount) }