Я использую TcpClient для связи с сервером, который отправляет информацию в виде строк с разделителями "\n". Поток данных довольно высок, и как только канал установлен, в потоке всегда будет информация для чтения. Сообщения могут иметь переменный размер.
Теперь мой вопрос: будет ли лучше использовать метод ReadLine() для чтения сообщений из потока, поскольку они уже разделены "\n", или будет целесообразно читать byteArray некоторого фиксированного размера и извлекать строки сообщений из их с помощью Split("\n") или что-то в этом роде? (Да, я понимаю, что могут быть случаи, когда в байтовый массив попадает только часть сообщения, и для этого тоже пришлось бы реализовывать логику.)
Здесь необходимо учитывать следующие моменты:
Представление.
Потери данных. Будут ли некоторые данные потеряны, если клиент читает не так быстро, как поступают данные?
- Многопоточная настройка. Что, если эту настройку необходимо реализовать в многопоточной среде, где каждый поток будет иметь отдельный канал связи, но будет совместно использовать одни и те же ресурсы на клиенте.