Re: polling for output from a subprocess module



Ivo <noreply@xxxxxxxxx> wrote:

Thomas Bellman wrote:

However, the os.read() function will only read what is currently
available. Note, though, that os.read() does not do line-based
I/O, so depending on the timing you can get incomplete lines, or
multiple lines in one read.


be carefull that you specify how much you want to read at a time,
otherwise it cat be that you keep on reading.

Specify read(1024) or somesuch.

Well, of course you need to specify how much you want to read.
Otherwise os.read() throws an exception:

>>> import sys, os
>>> os.read(sys.stdin.fileno())
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
TypeError: read() takes exactly 2 arguments (1 given)

In case of my PPCEncoder I recompiled the mencoder subprocess to deliver
me lines that end with \n.

If anyone can tell me how to read a continues stream than I am really
interested.

I have never had any problem when using the os.read() function,
as long as I understand the effects of output buffering in the
subprocess. The file.read() method is a quite different animal.

(And then there's the problem of getting mplayer/mencoder to
output any *useful* information, but that is out of the scope of
this newsgroup. :-)


--
Thomas Bellman, Lysator Computer Club, Linköping University, Sweden
"God is real, but Jesus is an integer." ! bellman @ lysator.liu.se
! Make Love -- Nicht Wahr!
.



Relevant Pages

  • Re: Re: Outlook Express
    ... > Select the conditions for your rule by selecting the desired ... > check boxes ... > section to specify whether all of the rule conditions must be ... If you enter multiple people ...
    (microsoft.public.win2000.general)
  • Re: Splitting Large Files (With Certain Requirements)
    ... is it correct to say that the size of the split parts should be a multiple of the record length? ... but I need to write a batch file using a utility that will ... I have to be able to specify a record length. ... This tells the "splitter" where a record ends so that it can be split ...
    (comp.os.msdos.apps)
  • Re: Notifiying Away on Holiday Emails
    ... Select the conditions for your rule by selecting the desired check ... > You can specify multiple conditions for a single rule by selecting more ... Specify the actions for your rule by selecting the desired check boxes ... If you enter multiple people or multiple ...
    (microsoft.public.windowsxp.newusers)
  • Re: Notifiying Away on Holiday Emails
    ... Select the conditions for your rule by selecting the desired ... check boxes in the Conditions section. ... You can specify multiple conditions for a single rule by ...
    (microsoft.public.windowsxp.newusers)
  • Re: Blocking Spam
    ... You can specify multiple conditions for a single rule by selecting more ... Specify the actions for your rule by selecting the desired check boxes ...
    (microsoft.public.windows.inetexplorer.ie6_outlookexpress)