Вы действительно забыли написать код, который анализирует полученные данные.TCP является протоколом потока байтов, который не сохраняет границы сообщений приложения.Если это не то, что вам нужно (а этого явно нет), вам нужно разработать и внедрить протокол поверх TCP, который предоставляет возможности, необходимые вашему приложению.Во-первых, вам нужен какой-то способ найти конец команды.Ваш код не дает получателю абсолютно никакой возможности сделать это.
Вы действительно должны потратить время на написание спецификации протокола, независимо от того, насколько он прост.Спецификация протокола должна четко указывать форматы сообщений на уровне байтов.Спецификация протокола должна четко указывать, как клиент идентифицирует, когда у него есть полное сообщение.
Тогда вам действительно нужно написать код для реализации этого протокола.
В этом случае вы можете просто написатьнулевой байт, чтобы отметить конец сообщения.Затем закодируйте получатель, чтобы он продолжал получать данные до тех пор, пока он не получит нулевой байт.Тогда он знает все, прежде чем это сообщение.