Donovan Baarda wrote:
The fact that partial reads/writes are possible without non-blocking
mode changes things a fair bit. Also, the lack of fnctl support in
Windows needs to be taken into account too.
... [ snip ] ...
The lack of support on win32 for non-blocking mode, combined with the
reduced ne
On Mon, 2005-03-21 at 23:31 +1100, Donovan Baarda wrote:
> On Mon, 2005-03-21 at 11:42 +0100, Peter Astrand wrote:
> > On Mon, 21 Mar 2005, Donovan Baarda wrote:
> >
> > > > > The only ways to ensure that a select process does not block like
> > > > > this,
> > > > > without using non-blocking mo
On Tue, 2005-03-22 at 12:49 +1200, Greg Ewing wrote:
> Donovan Baarda wrote:
>
> > Consider the following. This is pretty much the only way you can use
> > popen2 reliably without knowing specific behaviours of the executed
> > command;
> >
> > ...
> > fcntl.fcntl(child_in, fcntl.F_SETFL, flag
Donovan Baarda wrote:
On Mon, 2005-03-21 at 17:32 +1200, Greg Ewing wrote:
I don't agree with that. There's no need to use non-blocking
I/O when using select(), and in fact things are less confusing
if you don't.
Because staller.py outputs and flushes a fragment of data smaller than
selector.py use
Donovan Baarda wrote:
Consider the following. This is pretty much the only way you can use
popen2 reliably without knowing specific behaviours of the executed
command;
> ...
fcntl.fcntl(child_in, fcntl.F_SETFL, flags | os.O_NONBLOCK) # \
... # /
fcntl.fcntl(child_out,
On Mon, 21 Mar 2005 17:32:36 +1200, Greg Ewing
<[EMAIL PROTECTED]> wrote:
> > On 18 March 2005, Donovan Baarda said:
> >>The read method's current behaviour needs to be documented, so its actual
> >>behaviour can be used to differentiate between an empty non-blocking read,
> >>and EOF. This means
On Mon, 2005-03-21 at 11:42 +0100, Peter Astrand wrote:
> On Mon, 21 Mar 2005, Donovan Baarda wrote:
>
> > > > The only ways to ensure that a select process does not block like this,
> > > > without using non-blocking mode, are;
>
> > > 3) Use os.read / os.write.
> > [...]
> >
> > but os.read / o
On Mon, 21 Mar 2005, Donovan Baarda wrote:
> > > The only ways to ensure that a select process does not block like this,
> > > without using non-blocking mode, are;
> > 3) Use os.read / os.write.
> [...]
>
> but os.read / os.write will block too.
No.
>Try it... replace the file
> read/writes in
G'day,
From: "Peter Astrand" <[EMAIL PROTECTED]>
> On Mon, 21 Mar 2005, Donovan Baarda wrote:
[...]
> This is no "trap". When select() indicates that you can write or read, it
> means that you can write or read at least one byte. The .read() and
> .write() file methods, however, always writes and
On Mon, 21 Mar 2005, Donovan Baarda wrote:
> > I don't agree with that. There's no need to use non-blocking
> > I/O when using select(), and in fact things are less confusing
> > if you don't.
>
> You would think that... and the fact that select, popen2 etc all use
> file objects encourage you to
On Mon, 2005-03-21 at 17:32 +1200, Greg Ewing wrote:
> > On 18 March 2005, Donovan Baarda said:
>
> >>Many Python library methods and classes like select.select(), os.popen2(),
> >>and subprocess.Popen() return and/or operate on builtin file objects.
> >>However even simple applications of these m
On 18 March 2005, Donovan Baarda said:
Many Python library methods and classes like select.select(), os.popen2(),
and subprocess.Popen() return and/or operate on builtin file objects.
However even simple applications of these methods and classes require the
files to be in non-blocking mode.
I don'
On Fri, 2005-03-18 at 20:41 -0500, James Y Knight wrote:
> On Mar 18, 2005, at 8:19 PM, Greg Ward wrote:
> > Is having to use fcntl and os really so awful? At least it requires
> > the programmer to prove he knows what he's doing putting this file
> > into non-blocking mode, and that he really wan
On Mar 18, 2005, at 8:19 PM, Greg Ward wrote:
Is having to use fcntl and os really so awful? At least it requires
the programmer to prove he knows what he's doing putting this file
into non-blocking mode, and that he really wants to do it. ;-)
I'd tend to agree. :) Moreover, I don't think fread/f
On 18 March 2005, Donovan Baarda said:
> Rationale
> =
>
> Many Python library methods and classes like select.select(), os.popen2(),
> and subprocess.Popen() return and/or operate on builtin file objects.
> However even simple applications of these methods and classes require the
> files
G'day,
the recent thread about thread semantics for file objects reminded me I
had a draft pep for extending file objects to support non-blocking
mode.
This is handy for handling files in async applications (the non-threaded
way of doing things concurrently).
Its pretty rough, but if I fuss ove
16 matches
Mail list logo