Python读取fifo管道

Shell读取fifo的管道是很方便的,每一次read的时候都可以阻塞,只要管道两边都对接好。但Python在读取管道的时候我就一直没有找到好的解决方案,也是想每次读取fifo里面的buffer,没有buffer就阻塞着。下面一段代码可以实现这个功能,但是还是感觉很笨。

<pre>
pipe = "test.fifo"
...
read_cmd = "read -r a < " + pipe +";echo \"$a\""
lines = os.popen(read_cmd).read().split("\n")
line_str = lines[0]
</pre>

标签:none

评论已关闭