у меня прием - передача без флагов.
посмотрел твой код еще. зависает на чтении SysSockRecv возвращает 0 или -1, и как это обрабатывает прога?
я вроде не увидел как - походу никак. как она сокет переоткроет? - никак )
error при разрыве связи не возникает при чтении (да и при записи не возникнет ибо протокол не гарантирует доставку пакета а только отправку) completed тоже не возникает. нет пакетов на чтение какое то разумное время - переоткрываем сокет. хотя канеш и в ребут по хорошему уходить не должно. еще я пишу в проектах client.pBuffer := ADR( buffer[0] ); хоть и масло масляное но значит когда то нарывался причины уже не помню )
если ошибка продолжает вызывать эту же функцию в следующем цикле. у нас же вроде асинхронный режим включен (не блокирующий). на первый взгляд все должно виснуть но такого никогда не замечал. )
ps/ нашел. watchdog(); там точка останова стояла (после watchdog.Q)? )
TIMEOUT_DEFAULT 5 сек - думаю и секунды хватит (у меня 500ms обычно) но не принципиально. в ребут не должно уходить все равно по хорошему.





