alternative A - CLOSE from Producer
alternative B - CLOSE from Consumer
P
F
C
transport channel
transport channel
Client
Server
Server
Client
OUTPUT
INPUT
OUTPUT
INPUT
bind F
bind F
await conn
await conn
connect F
OPEN(IN)
READY(0)
no out peer
connect F
OPEN(OUT)
READY(1000)
READY(16)
output avail
READY(8)
READY(5)
DATA<1P>
DATA<2P>
produce data
DATA<1F>
DATA<3P>
DATA<4P>
produce data
DATA<2F>
DATA<5P>
READY(5)
READY(5)
DATA<1P>
produce data
DATA<3F>
DATA<2P>
CLOSE(rP)
CLOSE(rB)
disconnect
await conn
await conn
disconnect
CLOSE(rP)
CLOSE(rB)
disconnect
await conn
await conn
disconnect