2008/08/13

subprocess.Popen的僵死

最近在作python的 mencoder前端。

解决了两个Popen僵死的问题。

第一个是,由于mencoder显示的进度信息只有\r,不换行,默认的时候readline会等到所有的进度显示完毕

解决方法是,在popen时,加入universal_newlines=True

第二个是,由于我分别制定了stdout和stderr,由于stderr是程序运行完后读取的,结果stderr的buff满了,mencoder也卡住了。

参照:http://bugs.python.org/issue1256

解决方式是,不指定stderr或者指定stderr为subproess.STDOUT和stdout一起读取。

1 评论:

At 8:55 下午, Blogger 竹林独居 said...

GTK的mencoder前端,不错啊。
在KDE和WINDOWS下都有mencoder的前端了,但GTK下还没有,只听说过一个半成品。
你敢快做,做好了我试用。

 

发表评论

返回前一页 |<<返回首页