Главная страница


ru.unix

 
 - RU.UNIX ----------------------------------------------------------------------
 From : Roman A. Stepanov                    2:5020/400     21 Aug 2000  16:07:11
 To : All
 Subject : Re: Как узнать, что сокет закрыли с другой стороны?
 -------------------------------------------------------------------------------- 
 
 
 Alexander Pevzner <pzz@pzz.msk.ru> пишет в
 сообщении:874s4ii8r0.fsf@toy.pzz.msk.ru...
 
 >
 > Hi, All!
 >
 > Как узнать из программы, что сокет закрыли с другой стороны?
 >
 
 Кусок одной из моих программ:
   struct pollfd udfs;
 
   udfs.fd = sock;
   udfs.events = POLLIN;
 
   if (poll(&udfs, 1, 1))
   {
           if (udfs.revents & POLLIN)
                if ((chars_get = Socket::get_data(sock, &inp_data[0], 0xff))
 
 > 0) /* Обработка */;
 
       if (udfs.revents & POLLHUP)
            Socket::down(sock->sock);
    }
 
 Hу и все вышеописанное крутится в цикле пока сокет не "даун" ;)) Если кто
 умеет лучше - виртуально угощу пивом ;))
 Greetings,
 Roman A. Stepanov
 --
 Linux Registered User #96187
 --- ifmail v.2.15dev5
  * Origin: Golden Telecom (2:5020/400)
 
 

Вернуться к списку тем, сортированных по: возрастание даты  уменьшение даты  тема  автор 

 Тема:    Автор:    Дата:  
 Re: Как узнать, что сокет закрыли с другой стороны?   Roman A. Stepanov   21 Aug 2000 16:07:11 
Архивное /ru.unix/899074f289f0.html, оценка 3 из 5, голосов 10
Яндекс.Метрика
Valid HTML 4.01 Transitional