【发布时间】:2011-02-17 21:53:16
【问题描述】:
我正在使用这样的东西:
find folder/ | xargs -n1 -P10 ./logger.py > collab
在logger.py 内部,我正在处理输出重新格式化的行的文件。所以协作应该看起来像
{'filename' : 'file1', 'size' : 1000}
{'filename' : 'file1', 'size' : 1000}
{'filename' : 'file1', 'size' : 1000}
{'filename' : 'file1', 'size' : 1000}
相反,有时线条会变得混乱:
{'filename' : 'file1', 'size' : 1000}
{'file
{'filename' : 'file1', 'size' : 1000}
name' : 'file1', 'size' : 1000}
{'filename' : 'file1', 'size' : 1000}
如何防止/纠正这种情况?
【问题讨论】:
-
你的 logger.py 是多线程的还是什么?
-
@aioobe:
xargs -n1 -P10运行十个并发进程(logger.py)。见xargs。 -
哦,对了,误读了手册页并将其与
-p混淆了。这是个好问题! -
logger.py中的输出是如何完成的? -
@Josh,您是否尝试过在写入后添加
flush或使用无缓冲文件对象? (顺便说一句,这就是格伦在下面建议的)