Performancefrage fread charsize
-
Hi Leute,
ich habe mir eine Methode in meine CFtpFileInfo klasse gemacht die mir die
aktuelle grösse der Datei ausgibt um festzustellen ob ne Datei resumed werden muss beim Download oder ob ich von vorne anfangen kann.
Meine Frage ist:
Wieviel Bytes soll man pro loop maximal einlesen?int CFtpFileInfo::GetTheFileSize(char *filename) { int filesize=0; char chrdata[8193]; chrdata[0]=0; if (this->DoesFileExist(filename)) { FILE *Stream; if (!(Stream=fopen(filename,"rb"))==NULL) { while (!feof(Stream)) { filesize+=fread(chrdata,sizeof(char),8192,Stream); } fclose(Stream); } } return filesize; }
z.Z. lese ich 8192 Byte (8 KB Blöcke) pro Loop, wenn ich nur ein Byte lese
ist das natürlich sehr performancelastig. Gibts da irgendwie einen Standard mit welchen Grössen man heutzutage so einlesen sollte?
Danke!