@@ -70,12 +70,11 @@ func (sr *SimpleRedis) waitRedis(reader *textproto.Reader, channel chan redisCmd
7070 }
7171}
7272
73- func (sr * SimpleRedis ) askRedis (cmd redisCmd , channel chan redisCmd ) {
73+ func (sr * SimpleRedis ) askRedis (cmd redisCmd , channel chan redisCmd ) redisCmd {
7474 dialer := net.Dialer {Timeout : 2 * time .Second }
7575 conn , err := dialer .Dial ("tcp" , sr .host )
7676 if err != nil {
77- channel <- redisCmd {Error : fmt .Errorf (RedisUnreachable )}
78- return
77+ return redisCmd {Error : fmt .Errorf (RedisUnreachable )}
7978 }
8079 defer func () {
8180 if err := conn .Close (); err != nil {
@@ -111,21 +110,18 @@ func (sr *SimpleRedis) askRedis(cmd redisCmd, channel chan redisCmd) {
111110 for {
112111 select {
113112 case <- time .After (time .Second * 1 ):
114- channel <- redisCmd {Error : fmt .Errorf (RedisTimeout )}
115- return
113+ return redisCmd {Error : fmt .Errorf (RedisTimeout )}
116114 default :
117115 read , _ := reader .ReadLineBytes ()
118116 str := string (read )
119117 if strings .Contains (str , "-NOAUTH" ) {
120- channel <- redisCmd {Error : fmt .Errorf (RedisNoAuth )}
121- return
118+ return redisCmd {Error : fmt .Errorf (RedisNoAuth )}
122119 } else if str != "$1" {
123- channel <- redisCmd {Error : fmt .Errorf (RedisMiss )}
124- return
120+ return redisCmd {Error : fmt .Errorf (RedisMiss )}
125121 }
126122 read , _ = reader .ReadLineBytes ()
127- channel <- redisCmd {Data : read }
128- return
123+ return redisCmd {Data : read }
124+
129125 }
130126 }
131127 }
@@ -145,8 +141,7 @@ func (sr *SimpleRedis) Get(name string) ([]byte, error) {
145141 Name : name ,
146142 }
147143 channel := make (chan redisCmd )
148- go sr .askRedis (cmd , channel )
149- resp := <- channel
144+ resp := sr .askRedis (cmd , channel )
150145 if resp .Error != nil {
151146 return nil , resp .Error
152147 }
@@ -161,7 +156,7 @@ func (sr *SimpleRedis) Set(name string, data []byte, duration int64) error {
161156 Data : data ,
162157 Duration : duration ,
163158 }
164- go sr .askRedis (cmd , nil )
159+ sr .askRedis (cmd , nil )
165160 return nil
166161}
167162
@@ -171,6 +166,6 @@ func (sr *SimpleRedis) Del(name string) error {
171166 Command : "DEL" ,
172167 Name : name ,
173168 }
174- go sr .askRedis (cmd , nil )
169+ sr .askRedis (cmd , nil )
175170 return nil
176171}
0 commit comments