我有一个专有的程序,可以执行一个用户提供的程序作为一个子进程。父进程将一些有用的数据写入4号文件描述符。你知道吗
在C程序中,可以使用以下方法读取文件描述符中的数据:
s_count = read(4, &string_var[0], 100);
我正试图用Python实现同样的目标。你知道吗
以下内容不起作用,并挂起在读取时。你知道吗
stream = os.fdopen(4, "r")
stream.read()
同样的问题
os.read(4, 100)
我甚至试着把文件描述符改成非阻塞的。你知道吗
有什么方法可以像Python中的C
stdio.h
read()
那样做吗?你知道吗
======================================================
编辑-已解决:
程序在另一个文件描述符上有另一个可写流。
将输入流更改为无缓冲(即it is open)并将0
作为第三个参数传递给os.fdopen
后,问题就解决了
我必须使它非阻塞,然后使用选择投票。你知道吗
在python中,open()返回一个文件描述符,最常用于两个参数:open(filename,mode)。你知道吗
相关问题 更多 >
编程相关推荐