Salve,
ho piccolo problema di prestazioni per quanto riguarda la scrittura di un file attraverso la rete.
Il mio codice legge i byte di un file e poi li scrive su un altro file, una sorta di copia incolla. Fin qui tutto bene, ma le prestazioni calano vistosamente quando il file di destinazione è su un percorso di rete e non riesco a capirne il motivo:
cioè si parla di 10Mb/s se il file di destinazione è locale contro 2Mb/s se il file è in rete... una differenza piuttosto sensibile direi che in sistemi più performanti del mio di test si fa sentire ancora di più..codice://path del file di destinazione string destinationFile="//cartella_di_rete/file.dati"; //file di destinazione ofstream outfile(destinationFile, ios::binary | ios::out | ios::trunc); //crea il buffer di lettura mybuffer = new uint8[20480*512]; //cicla per leggere il file diviso in diversi chunk for (int i = 1; i <= chunk; i++) { //funzione che legge il file originale e lo copia nel buffer(in realtà è molto più complessa, // in quanto si tratta di una funzione di terzi ma non ci interessa in questa sede) bool ckok= ReadFile( mybuffer, i); if (ckok) outfile.write((char*)mybuffer, bufSize); } delete(mybuffer); outfile.close();
qualcuno di voi ha qualche idea?