In other cases you should use AsyncStreams in regular mode. This means that there is no guarantee that each sent message will be received as a single message. In fact it is more or less guaranteed not to happen. So your code is responsible for correctly collecting and receiving the message.
This is how network communication works. You cannot rely on the messages to be received as a single "packet". If each line ends with an end of line character (or any other specific character) then you can use AsyncStreamsText.