Когда ваш контекст обрабатывает тайм-ауты соединения, я предполагаю, что вы имеете в виду, что вы еще не получили ответ на запрос в течение определенного периода времени.
Завершение вашего EndConnect
в блок try и отлов любых исключений не обязательно означает возникновение тайм-аута. В настоящее время нет встроенной поддержки для обработки таймаутов с TcpClient
.
Ваша первая ссылка является хорошим примером того, как обнаруживать и работать с таймаутами соединения.
Эта статья также может быть вам полезна: Использование асинхронного клиентского сокета