package redis import ( "context" "fmt" "testing" "time" ) func TestGet(t *testing.T) { Set("syj1", "123", time.Duration(10)*time.Second) Set("syj2", "123", time.Duration(8000)*time.Millisecond) fmt.Println(Get("syj1")) go func() { Lock("syj3", time.Duration(10)*time.Second, func() { demo("123") }) }() go func() { Lock("syj3", time.Duration(10)*time.Second, func() { demo("456") }) }() time.Sleep(time.Duration(3) * time.Second) } func demo(val string) { time.Sleep(time.Duration(10) * time.Millisecond) fmt.Println("I achieve chance : ", val) } var ctx = context.Background() func TestD11(t *testing.T) { fmt.Println(Get("key")) }