Explorar o código

allow <0 timeout to mean "no timeout"

Travis J Parker %!s(int64=10) %!d(string=hai) anos
pai
achega
6fcdc1dbbf
Modificáronse 1 ficheiros con 7 adicións e 1 borrados
  1. 7 1
      pool.go

+ 7 - 1
pool.go

@@ -53,7 +53,13 @@ func (p *Pool) get(timeout time.Duration) *client {
 		p.makeOne()
 	}
 
-	deadline := time.After(timeout)
+	var deadline <-chan time.Time
+	if timeout < 0 {
+		deadline = nil
+	} else {
+		deadline = time.After(timeout)
+	}
+
 	for {
 		select {
 		case c := <-p.clients: