Немедленно прекратить попытку подключения? - PullRequest
1 голос
/ 05 января 2011

Есть ли способ заставить сокет прекратить попытки подключения сразу?Похоже, что если сокет пытается подключиться к сети, требуется определенное время для ожидания соединения.Если пользователь нажимает кнопку, пытаясь подключиться, а затем хочет закрыть, другие потоки поддерживают работу приложения, поскольку оно застревает, блокируя метод socket.Connect ().

Я пытался вызвать close из другого потока,Исключение изменяется, но время ожидания все еще там.Раздражает необходимость ждать тайм-аут.

Ответы [ 2 ]

2 голосов
/ 05 января 2011

Вы можете использовать асинхронный метод BeginConnect в сочетании с EndConnect , чтобы избежать блокировки основного потока.Что касается времени ожидания, вы можете попытаться уменьшить его значение.

0 голосов
/ 05 января 2011

Почему бы не использовать асинхронные сокеты?Таким образом, если он вам больше не нужен, вы закрываете его и игнорируете все, что впоследствии возвращается на ваш обратный вызов.Я ожидаю, что это будет BeginConnect, что вам нужно позвонить.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...