EXSIMA.Connection.7z
Доброго времени суток.
Тема старая, но вдруг кому-то все еще интересно.
Проблема в примере от Embarcadero в том, что прием сообщений и отправка происходят через два разных соединения. Думаю, что в этом и проблема. Я запихал и отправку, и прием в один процесс и делаю это через один сокет. Условная проблема в том, что отправка происходит асинхронно, т.е. сообщение пихается в кэш, а уже внутри нити с установленным соединением происходит реальная отправка. Поэтому момент отправки я снабдил соответствующим событием. События срабатывают в контексте нити.
Надеюсь, в качестве отправной точки начинающим разработчикам моя писанина поможет.