在我正在编写的 python 程序中,我有一个线程,它迭代内存中的大型结构并将其增量写入类似文件的对象中。我有另一个线程,它接受一个类似文件的对象并将其写入磁盘。是否有一种简单的方法来连接这两个线程,以便第一个线程输入的任何数据都将被缓冲到第二个线程?
具体来说,我试图将数据传递给 subprocess.Popen()。该进程将从 stdin 读取,但您不能将“类似文件”的对象传递给 Popen,因为它会调用 stdin.fileno() 并崩溃,除非您有一个真实的文件。
相反,您需要将 PIPE 参数传递给 Popen,这允许您将 proc.stdin 用作类似文件的对象。但是,如果您已经有了一个类似文件的对象,那么似乎没有一个很好的方法将它们两个结合在一起。
python ×1