上面犯了两个错误:
1、defer使用错误 2、redis客户端从pool取出来以后要判断错误 修正后的代码是这样的: 1 package main 2 3 import ( 4 "fmt" 5 "github.com/astaxie/beego/logs" 6 "github.com/garyburd/redigo/redis" 7 "github.com/pkg/errors" 8 "ha666/initial" 9 _ "ha666/initial" 10 "strconv" 11 "time" 12 ) 13 14 func main() { 15 for { 16 bytesresult, err := get_redis() 17 if err != nil { 18 fmt.Println(err.Error()) 19 continue 20 } 21 for _, v := range bytesresult { 22 il, err := strconv.ParseInt(string(v), 10, 64) 23 if err != nil { 24 fmt.Println(err.Error()) 25 continue 26 } 27 fmt.Println(il) 28 } 29 time.Sleep(1000 * time.Millisecond) 30 } 31 } 32 33 func get_redis() ([][]byte, error) { 34 rc := initial.RedisClient.Get() 35 if rc.Err() != nil { 36 return nil, rc.Err() 37 } 38 defer rc.Close() 39 bytesresult, err := redis.ByteSlices(rc.Do("TIME")) 40 return bytesresult, err 41 }
转载于:https://www.cnblogs.com/Zmoli775/p/8183678.html