El Jueves, 27 de Marzo de 2008, John Carter escribió:

> My guess is if you include the read statements you get something like
> this... read(3, "", 1000)                       = 0
> Which means (according to "man 2 read")

Which lib package must I install to get these man pages? I don't find them in 
a Debian with default installation.


> ==test.rb=============================================================
> loop do
>     begin
>        open( "foofi") do |f|
>           loop do
>              p select([f],nil,nil,500000)
>              p f.sysread(1000)
>           end
>        end
>     rescue EOFError => details
>        p details
>     end
> end
> ======================================================================
> Works as expected...
>
> But...
>
> ======================================================================
> open( "foofi") do |f|
>     loop do
>       p select([f],nil,nil,500000)
>       p f.sysread(1000)
>     end
> end
> ======================================================================
>
> Bombs out with EOFError
>
> but curiously
> ======================================================================
> open( "foofi") do |f|
>     loop do
>        p select([f],nil,nil,500000)
>        p f.read(1000)
>     end
> end
> ======================================================================
> Exhibits exactly the behaviour you describe.


> So it all behaves according to plan... just not your plan... :-))


Thanks a lot for so great information, it's really a good explanation. 
Tomorrow I'll review all of it.


Thanks a lot for all and best regards.

-- 
Iñaki Baz Castillo