Здравствуйте, andrey82, Вы писали:
A>Здравствуйте, XaSSeR, Вы писали:
A>Вот это еще как то не очень:
A>if (count != 0)
A>new Thread(ParseMessage).Start(NetMessage.Recive(buffer));
A>netStream.Read прочитать может например первые 2 байта из потока, их обработка не пройдет, а при след. чтении — будут приняты остальные байты и на обработку пойдет фактически уже мусор.
XSS>>Так вот, когда я раскоменчиваю строку, чтобы посмотреть что на выходе у Recive() (то есть что лежит в buffer) все начинает отлично работать и выводит что считано 4096 байт данных и все байты через |. А когда убираю данную строку, получаю иногда NetMessage.Recive(buffer) возвращает такое — new string[] { "" }, хотя должно быть new string[] { "Helo", "World" }. Поэтому я не знаю что на входе когда работает не правильно.
A>Так просто логгирование на входе в Recive() можно сделать...
A>Проблема похоже все таки в логике обработки читаемых из соединения байт.
Почему же тогда после вставки функции вывода буфера все нормально заработало, если логика обработки хромала то ошибки были бы постоянно.