Здравствуйте, уважаемый Pzz, Вы писали:
AG>>Передающая сторона имеет уверенность, что на приемной стороне готовы принять блок данных.
AG>>Добавляет сложности — есть такое немного
Pzz>Выкинь ты это нахрен, оно не нужно. И добавь лучше периодические "пинги" в состоянии простоя — TCP keepalive с этим не очень хорошо справляется.
Выкидывать — не надо, это годная фича. Я уже сообщал, для чего она предназначена.
Добавить ping-и: на перспективу неплохо, я и сам думал об этом.
Но на данном этапе — это как раз выглядит усложнением. Предполагаю, что с этим можно и подождать.
AG>>2) Да, есть тот фактор, что я привязаываю проект к фреймворку Qt. К наиболее богатому и продвинутому из имеющихся на сегодня C++ фреймворков.
Pzz>Ты понимаешь разницу между СПЕЦИФИКАЦИЕЙ протокола, и его РЕАЛИЗАЦИЕЙ? Нет ничего плохого в том, чтобы привязать реализацию к какому-либо фреймворку. Все равно, на чем-то реализовывать надо. Но вот спецификацию лучше бы сохранить нейтральной по отношению к языкам и фреймворкам.
Так спецификация — она и есть нейтральна.
Хочешь — делай на POSIX, хочешь — на STL/boost, хочешь — на Python.
Лично мне нравится для этого применять именно Qt.
P.S. Данную тему можно считать исчерпанной.
Вам, уважаемый Pzz, большая благодарность за участие и подсказки.
На данный момент — я ушёл от выявления маркера конца и работаю по длине блока, передаваемой в начале блока.