On Tue, Oct 18, 2011 at 9:22 AM, Jens Alfke <j...@mooseyard.com> wrote: > On Oct 17, 2011, at 9:26 PM, Wilker wrote: > if the user is acessing a >> file from an external drive, and the file has 8gb, I only wanna read 64kb, >> so, I don't wanna read it all just for 64kb. > > Just use fopen/fseek/fread/fclose. Mapping in the entire file just so you can > read 64kb is overkill.
Specifically, if you fseek to the beginning of where you want to read, then fread what you want, the only part that will get cached is what you read. It will be faster than not caching. mapping the file then reading from memory also caches parts of the file, but only what you read. If you're going to read your file in large chunks then it will be faster to use the open(), lseek(), read() and close() system calls. The "f" calls from stdio use an in-process cache which is faster for small accesses but slower for large ones. -- Don Quixote de la Mancha Dulcinea Technologies Corporation Software of Elegance and Beauty http://www.dulcineatech.com quix...@dulcineatech.com _______________________________________________ Cocoa-dev mailing list (Cocoa-dev@lists.apple.com) Please do not post admin requests or moderator comments to the list. Contact the moderators at cocoa-dev-admins(at)lists.apple.com Help/Unsubscribe/Update your Subscription: http://lists.apple.com/mailman/options/cocoa-dev/archive%40mail-archive.com This email sent to arch...@mail-archive.com