code: func (l *Listener) AcceptKCP() (*UDPSession, error) {
  	var timeout <-chan time.Time
  	if tdeadline, ok := l.rd.Load().(time.Time); ok && !tdeadline.IsZero() {
  		timeout = time.After(tdeadline.Sub(time.Now()))
  	}
  
  	select {
  	case <-timeout:
  		return nil, &errTimeout{}
  	case c := <-l.chAccepts:
  		return c, nil
  	case <-l.die:
  		return nil, errors.New(errBrokenPipe)
  	}
  }
docs: // AcceptKCP accepts a KCP connection