[SP-pm] duvida timeout operações em rede

Tiago Peczenyj tiago.peczenyj at gmail.com
Thu May 2 09:40:18 PDT 2013


Ola Galera

estou com o seguinte pepino: quero que uma dada subrotina tenha um timeout
bem baixo, tipo 0.5 segundos.

Entretanto dentro dessa subrotina eu tenho 3 operações de I/O: um syswrite
e 2 sysread.

Pensei em usar isso:

  use Time::Out ;
  use Time::HiRes ;

  timeout 3.1416 => sub {
        # ...
  } ;


porém e se isso interromper a minha subrotina entre escrever e ler?

por exemplo

sub foo {
   socket->syswrite( $request );
   # interrompeu aqui!!
   socket->sysread( $len , 4);
   socket->sysread( $message, $len);
}

SE isto acontecer, supondo que estou reusando o socket, na proxima chamada
de foo eu vou ler a resposta do request anterior? Se sim, comofas/

-- 
Tiago B. Peczenyj
Linux User #405772

http://about.me/peczenyj
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.pm.org/pipermail/saopaulo-pm/attachments/20130502/a58f3804/attachment.html>


More information about the SaoPaulo-pm mailing list