cteni ze socketu

Pavel Jelinek pavel.jelinek na monetplus.cz
Čtvrtek Listopad 14 08:05:11 CET 2002


> > signal(SIGALRM, alarm_handler);
> > timeout_flag=0;
> > alarm(5);
> > while(1)
> >  {
> >    read(sockd, &znak, 1);
> >    if(timeout_flag==1)break;
> >    /* tady je par nedulezitych radku, kde se precteny znak nejak
> >       zpracovava */
> >  }
> > alarm(0);


Myslim ze pouzivat alarm pro tento ucel neni prilis vhodne, lepsi by bylo
asi pomoci funkce poll nebo select pockat
na socketu na prichozi data a pak data funkci read vycist, treba v
neblokujicim cteni. Pouzit jenom neblokujici read
v nekonecnem cyklu neni prilis vhodne vzhledem k zatezi. Select nebo poll
zaroven obsahuje presny timeout, po kterem vraci
rizeni zpet.

S pozdravem

Pavel Jelinek



Další informace o konferenci Linux