Как узнать статус сокета?

Язык Visual Basic на платформе .NET.

Модераторы: Ramzes, Sebas

Wind
Начинающий
Начинающий
 
Сообщения: 2
Зарегистрирован: 13.12.2008 (Сб) 3:06

Как узнать статус сокета?

Сообщение Wind » 13.12.2008 (Сб) 6:50

В общем код такой:

Код: Выделить всё
While insock.Available > 0
insock.Receive(ipack)
ipacks.add(ipack)
End While



Тут есть две проблемы, отклик от хоста - 1000 и выше, поэтому insock.available не сразу меняется, также в любой момент связь может вообще оборваться на короткое время. В обоих случаях прием пролетает. Как можно определить что сокет всё ещё принимает данные или закончил приём?

Williams
Гуру
Гуру
Аватара пользователя
 
Сообщения: 1280
Зарегистрирован: 06.05.2008 (Вт) 18:35
Откуда: System.Reflection.Williams (увидел себя в зеркале :))

Re: Как узнать статус сокета?

Сообщение Williams » 13.12.2008 (Сб) 11:13

Poll
И вы думаете, что вас оставят в живых после прочтения этого поста?

Wind
Начинающий
Начинающий
 
Сообщения: 2
Зарегистрирован: 13.12.2008 (Сб) 3:06

Re: Как узнать статус сокета?

Сообщение Wind » 13.12.2008 (Сб) 12:36

Спасибо! Блин, как я это пробовал, если до этого у мну SelectRead постоянно в тру висел....


Вернуться в Visual Basic .NET

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 78

    TopList  
cron