这两者有什么区别吗?
答:
# seek back by difference from current position
fp.seek(last_read_byte - fp.tell(), os.SEEK_CUR)B:
# seek by absolute position from start of the file
fp.seek(last_read_byte)(fp是一个python文件对象)
我只是认为B)可能从一开始就开始读取文件。如果是这样的话我该怎么查呢?
我该担心像这样的蠢事吗?
发布于 2013-10-19 22:05:17
从一开始调用seek就不会重新读取整个文件。
我会使用绝对的搜索--它更简单,更容易理解;它不会浪费额外的可能的syscall来告诉你;如果文件在调用之间发生变化,它就没有竞争条件.
如果您担心性能,那么测试性能不仅更有用,而且也更容易,而不是试图猜测它是如何工作的,然后尝试猜测性能影响是什么。只需创建一个大文件,并在一段时间内尝试这两个版本。
https://stackoverflow.com/questions/19471618
复制相似问题