08/05/12 20:12
Brenza
Ciao a tutti, ho scritto un programma che esegue il download di una serie di files,
msgbox("Inizio download")
My.Computer.Network.DownloadFile("http:\esempio1.txt", "Temp\a.txt")
msgbox("File 1 scaricato")
My.Computer.Network.DownloadFile("http:\esempio2.txt", "Temp\b.txt")
msgbox("File 2 scaricato")
My.Computer.Network.DownloadFile("http:\esempio3.txt", "Temp\c.txt")
msgbox("File 3 scaricato")
My.Computer.Network.DownloadFile("http:\esempio4.txt", "Temp\d.txt")
msgbox("File 4 scaricato")
Arrivato alla seconda istruzione (quella che esegue il primo download) il programma si blocca per circa 12 secondi come se fosse crashato per poi riprendere a funzionare normalmente fino alla fine della funzione...
Come mai? C'è modo di evitare la cosa o almeno di ridurre i tempi di attesa?
Grazie di cuore a chi mi risponderà!
Ultima modifica effettuata da Brenza 28/05/12 15:53
aaa
08/05/12 20:16
GN
A prima vista mi sembra che quei 12 secondi siano... il tempo necessario per scaricare File1! Prova ad accedere al file remoto via browser: se è necessario lo stesso tempo, significa che l'unico fatto da cui dipende il tempo di attesa è la velocità della rete.
aaa
08/05/12 23:21
Brenza
No no, tutti i files che metto in download sono txt da pochi byte ognuno e su per giù tutti delle stesse dimensioni!
Anche provando a cambiare l'ordine in cui scarico i file a farmi attendere più di mezzo secondo è sempre e solo il primo dei quattro! =(
aaa
09/05/12 7:34
lorenzo
Probabilmente la prima volta perdi più tempo perché deve essere aperta una nuova connessione, che poi viene sfruttata per il download degli altri files...
aaa
09/05/12 19:25
Dark_light
Bisogna chiarire di che tempi d'attesa si sta parlando.
Se si tratta dell'attesa dovuta alle dimensioni del file mi pare più che normale .
Se invece è un'attesa dovuta ad altro, come ti ho suggerito prima, usa il metodo asincrono.
Se proprio vuoi creare qualche "intrattenimento", puoi usare la progress bar.
aaa