mirror of
https://github.com/redis/go-redis.git
synced 2025-09-08 19:52:07 +03:00
Simplify close.
This commit is contained in:
14
v2/pool.go
14
v2/pool.go
@@ -31,7 +31,7 @@ func newConn(netcn net.Conn) *conn {
|
|||||||
cn := &conn{
|
cn := &conn{
|
||||||
cn: netcn,
|
cn: netcn,
|
||||||
}
|
}
|
||||||
cn.rd = bufio.NewReaderSize(cn, 1024)
|
cn.rd = bufio.NewReader(cn)
|
||||||
return cn
|
return cn
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -53,6 +53,10 @@ func (cn *conn) Write(b []byte) (int, error) {
|
|||||||
return cn.cn.Write(b)
|
return cn.cn.Write(b)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func (cn *conn) Close() error {
|
||||||
|
return cn.cn.Close()
|
||||||
|
}
|
||||||
|
|
||||||
//------------------------------------------------------------------------------
|
//------------------------------------------------------------------------------
|
||||||
|
|
||||||
type connPool struct {
|
type connPool struct {
|
||||||
@@ -129,7 +133,7 @@ func (p *connPool) Put(cn *conn) error {
|
|||||||
func (p *connPool) Remove(cn *conn) error {
|
func (p *connPool) Remove(cn *conn) error {
|
||||||
var err error
|
var err error
|
||||||
if cn != nil {
|
if cn != nil {
|
||||||
err = p.closeConn(cn)
|
err = cn.Close()
|
||||||
}
|
}
|
||||||
p.cond.L.Lock()
|
p.cond.L.Lock()
|
||||||
p.size--
|
p.size--
|
||||||
@@ -155,7 +159,7 @@ func (p *connPool) Close() error {
|
|||||||
p.cond.L.Lock()
|
p.cond.L.Lock()
|
||||||
|
|
||||||
for e := p.conns.Front(); e != nil; e = e.Next() {
|
for e := p.conns.Front(); e != nil; e = e.Next() {
|
||||||
if err := p.closeConn(e.Value.(*conn)); err != nil {
|
if err := e.Value.(*conn).Close(); err != nil {
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -165,10 +169,6 @@ func (p *connPool) Close() error {
|
|||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
func (p *connPool) closeConn(cn *conn) error {
|
|
||||||
return cn.cn.Close()
|
|
||||||
}
|
|
||||||
|
|
||||||
//------------------------------------------------------------------------------
|
//------------------------------------------------------------------------------
|
||||||
|
|
||||||
type singleConnPool struct {
|
type singleConnPool struct {
|
||||||
|
Reference in New Issue
Block a user