func NewPipeConns() *PipeConns {
	ch1 := make(chan *byteBuffer, 4)
	ch2 := make(chan *byteBuffer, 4)

	pc := &PipeConns{
		stopCh: make(chan struct{}),
	}
	pc.c1.rCh = ch1
	pc.c1.wCh = ch2
	pc.c2.rCh = ch2
	pc.c2.wCh = ch1
	pc.c1.pc = pc
	pc.c2.pc = pc
	return pc
}
func NewPipeConns() *PipeConns {
	ch1 := make(chan *byteBuffer, 4)
	ch2 := make(chan *byteBuffer, 4)

	pc := &PipeConns{
		stopCh: make(chan struct{}),
	}
	pc.c1.rCh = ch1
	pc.c1.wCh = ch2
	pc.c2.rCh = ch2
	pc.c2.wCh = ch1
	pc.c1.pc = pc
	pc.c2.pc = pc
	return pc
}
func NewPipeConns ( ) * PipeConns { ch1 := make ( chan * byteBuffer , 4 ) ch2 := make ( chan * byteBuffer , 4 ) pc := & PipeConns { stopCh : make ( chan struct { } ) , } pc . c1 . rCh = ch1 pc . c1 . wCh = ch2 pc . c2 . rCh = ch2 pc . c2 . wCh = ch1 pc . c1 . pc = pc pc . c2 . pc = pc return pc }
// NewPipeConns returns new bi-directional connection pipe.
NewPipeConns returns new bi - directional connection pipe .