Re: Fw: select(), EOF...

From: Carlos Fernández Sanz (cfs-lk@fulanito.nisupu.com)
Date: Mon Aug 20 2001 - 15:56:14 EST


How come the process is never runnable unless there's new data in the file?
If it was opening and closing the file continously it would be using lots of
CPU, while it's 0 if there's no data coming.

----- Original Message -----
From: "Ignacio Vazquez-Abrams" <ignacio@openservices.net>
To: <linux-kernel@vger.kernel.org>
Sent: Monday, August 20, 2001 10:45 PM
Subject: Re: Fw: select(), EOF...

> On Mon, 20 Aug 2001, Carlos Fernández Sanz wrote:
>
> > (sorry if this is a dupe, I haven't seen it come from the list, so I'm
> > resending as plain ASCII in case majordomo kills messages with strange
> > stuff)
> >
> > Hi,
> >
> > I need to do something similar to tail -f.
> > I was hoping that select() or poll() would block my process after
reaching
> > EOF but (as the man says) EOF doesn't cause read() to block so select()
and
> > poll() both say I can read. The result is (obviously) that my program
waits
> > actively and uses all the CPU.
> > What's the right way of doing this? I assume the kernel provides
facilities
> > to find out if there is new data to read (other than EOF).
> >
> > Thanks.
>
> tail -f just alternates between open() and close(), keeping in memory the
> current byte offest into the file.
>
> --
> Ignacio Vazquez-Abrams <ignacio@openservices.net>
>
> -
> To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at http://vger.kernel.org/majordomo-info.html
> Please read the FAQ at http://www.tux.org/lkml/
>

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/



This archive was generated by hypermail 2b29 : Thu Aug 23 2001 - 21:00:37 EST