title: When to close a TcpClient connection
body: <p>I'm having trouble understanding the proper flow when a TcpListener and TcpClient communicate with each other.</p>
  <p>I have a program that starts up a TcpListener on port 8088 and listens for TcpClient connections.</p>
  <p>I have another program that creates a TcpClient (let's call it DataSender1) and connects to the TcpListener in the other program and sends it data.</p>
  <p>If DataSender1 is a program that runs constantly (like a service) and pushes data to the TcpListener regularly over time, when should the TcpListener close DataSender1's connection? Should I close the connection after I receive and process each distinct message from DataSender1? Or, whenever I decide to shut down the TcpListener? Do I create a new connection each time DataSender1 is ready to send data?</p>
  <p>I'm running into an issue in an actual application where the TcpListener aborts the connection whenever my TcpClient sends 202 messages. I have no idea why it constantly aborts on message 202.</p>