brasseld
Messages postés7Date d'inscriptionlundi 24 mars 2003StatutMembreDernière intervention27 avril 2006
-
27 avril 2006 à 13:22
cs_abm
Messages postés4Date d'inscriptiondimanche 2 mars 2003StatutMembreDernière intervention14 mai 2007
-
18 nov. 2009 à 19:47
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.
cs_abm
Messages postés4Date d'inscriptiondimanche 2 mars 2003StatutMembreDernière intervention14 mai 2007 18 nov. 2009 à 19:47
le code est simple mais c'est toujours utile de le commenter et de faire un pack complet
merci quand meme
sheorogath
Messages postés2448Date d'inscriptionsamedi 21 février 2004StatutModérateurDernière intervention29 janvier 201017 9 juil. 2007 à 15:55
ben heu aleatoire
jyboo
Messages postés1Date d'inscriptionsamedi 26 mars 2005StatutMembreDernière intervention 9 juillet 2007 9 juil. 2007 à 15:53
Salut,
je voulais savoir si le vector remet une liste trié dans un ordre quelconque (croissant ou décroissant du nom), ou bien si il recupère les noms de chaque fichier de facon désordonnée. Merci.
dkomar
Messages postés4Date d'inscriptionmardi 20 janvier 2004StatutMembreDernière intervention27 février 2007 18 oct. 2006 à 13:33
Salut,
je suis tombé sur ton code par hasard alors je poste un message même si c'est pas tout récent !
pour les personnes connaissant le shell !!!
Windows (par exemple) :
cmd%> dir /B /A -D /S *.mp3 *.wav > output.txt
environ 3500 ms (presque 100 fois moins) sur un HDD de 30GO contenant 28GO de données dont 12GO de MP3 / WAV
et pas besoin du runtime Java, ;-)
p.s : je pense que le resultat serait encore plus beau et plus rapide sous une bonne debian sarge
sheorogath
Messages postés2448Date d'inscriptionsamedi 21 février 2004StatutModérateurDernière intervention29 janvier 201017 29 juin 2006 à 12:49
Temps d'exÚcution : 306407 ms
nb fichier => 304061
en ayant ferme eclipse :p
sheorogath
Messages postés2448Date d'inscriptionsamedi 21 février 2004StatutModérateurDernière intervention29 janvier 201017 29 juin 2006 à 11:53
Temps d'exÚcution : 371563 ms
nb fichier => 304081
les deux boucle sont utile j'ai 200 seconde de moins d'execution avec ;) (j'en avais 555 000 ms a peu pres sans)
donald_lover
Messages postés2Date d'inscriptiondimanche 19 octobre 2003StatutMembreDernière intervention27 avril 2006 27 avril 2006 à 14:57
Euh "extends Thread implements Runnable" c'est pas utile, un seul suffit, le Runnable sert pour une classe qui aurai deja hérité d'une autre classe (donc qui aurait deja un extends) visiblement ici non donc le Runnable ne sert pas.
Pour les deux boucles je suis assez d'accord je ne suis pas sur de l'utilité de la chose, pourquoi ne pas tout faire dans la meme, en plus de cette manière tu n'aurai plus besoin de ton tableau array vu que tu stock pour relire et le virer.
Sinon apres je n'ai pas analysé en profondeur (si je crois qu'il ya un e en trop à inital dans "fichier initiale" :p mais bon je dirai rien la dessus je suis aussi nul en orthographe).
sheorogath
Messages postés2448Date d'inscriptionsamedi 21 février 2004StatutModérateurDernière intervention29 janvier 201017 27 avril 2006 à 14:33
ouais je regarderais ce que je peux modifier en fonction de ce que tu dit mais c'est quasi instantanne pour 15go de musique (:$)
c'est pour ca que je l'ai laisse tel quel
enfin merci pour ton commentaire ^^
++
brasseld
Messages postés7Date d'inscriptionlundi 24 mars 2003StatutMembreDernière intervention27 avril 2006 27 avril 2006 à 13:22
ça aurait été bien que tu organises mieux ta source. Car la je cherche aprés tes attributs de classe et je m'aperçois qu'il y en a en haut et en bas... De plus, le nom d'attribut avec une majuscule, c'est pas bien, tout comme les noms de méthodes... Seul le nom de classe doit être composé d'une majuscule en premiére position.
De plus, dans la méthode run(), je ne vois pas pourquoi tu fais une deuxiéme boucle. Elle me semble inutile. Et pour la récursivité c'est bien...mais question rapidité c'est pas trop ça je pense... Vaut mieux pas avoir un DD 200 Go juste pour ta musique car tu vas y passer du temps.
Je pense que tu devrais lancer chaque parcours de dossier dans une Thread... Et pouvoir limiter ou augmenter ce nombre en fonction de la rapidité d'éxécution que tu veux obtenir.
Finalement, plutôt que d'ajouter tous tes noms de fichier dans un vecteur puis de rebalancer ensuite dans un fichier : écris directement le nom dans ton fichier.... Car si tu as beaucoup de données à écrire, c'est pas cool encore pour la perf.
Et re finalement : juste un p'tit détail. Quand tu parcours une ArrayList ou un Vector, utilises un Iterator, beaucoup plus rapide, car il me semble que la méthode get d'une ArrayList fonctionne comme une liste chaînée. Mais je ne suis plus sûr de ça, c'est à vérifier.
18 nov. 2009 à 19:47
merci quand meme
9 juil. 2007 à 15:55
9 juil. 2007 à 15:53
je voulais savoir si le vector remet une liste trié dans un ordre quelconque (croissant ou décroissant du nom), ou bien si il recupère les noms de chaque fichier de facon désordonnée. Merci.
18 oct. 2006 à 13:33
je suis tombé sur ton code par hasard alors je poste un message même si c'est pas tout récent !
pour les personnes connaissant le shell !!!
Windows (par exemple) :
cmd%> dir /B /A -D /S *.mp3 *.wav > output.txt
environ 3500 ms (presque 100 fois moins) sur un HDD de 30GO contenant 28GO de données dont 12GO de MP3 / WAV
et pas besoin du runtime Java, ;-)
p.s : je pense que le resultat serait encore plus beau et plus rapide sous une bonne debian sarge
29 juin 2006 à 12:49
nb fichier => 304061
en ayant ferme eclipse :p
29 juin 2006 à 11:53
nb fichier => 304081
les deux boucle sont utile j'ai 200 seconde de moins d'execution avec ;) (j'en avais 555 000 ms a peu pres sans)
27 avril 2006 à 14:57
Pour les deux boucles je suis assez d'accord je ne suis pas sur de l'utilité de la chose, pourquoi ne pas tout faire dans la meme, en plus de cette manière tu n'aurai plus besoin de ton tableau array vu que tu stock pour relire et le virer.
Sinon apres je n'ai pas analysé en profondeur (si je crois qu'il ya un e en trop à inital dans "fichier initiale" :p mais bon je dirai rien la dessus je suis aussi nul en orthographe).
27 avril 2006 à 14:33
c'est pour ca que je l'ai laisse tel quel
enfin merci pour ton commentaire ^^
++
27 avril 2006 à 13:22
De plus, dans la méthode run(), je ne vois pas pourquoi tu fais une deuxiéme boucle. Elle me semble inutile. Et pour la récursivité c'est bien...mais question rapidité c'est pas trop ça je pense... Vaut mieux pas avoir un DD 200 Go juste pour ta musique car tu vas y passer du temps.
Je pense que tu devrais lancer chaque parcours de dossier dans une Thread... Et pouvoir limiter ou augmenter ce nombre en fonction de la rapidité d'éxécution que tu veux obtenir.
Finalement, plutôt que d'ajouter tous tes noms de fichier dans un vecteur puis de rebalancer ensuite dans un fichier : écris directement le nom dans ton fichier.... Car si tu as beaucoup de données à écrire, c'est pas cool encore pour la perf.
Et re finalement : juste un p'tit détail. Quand tu parcours une ArrayList ou un Vector, utilises un Iterator, beaucoup plus rapide, car il me semble que la méthode get d'une ArrayList fonctionne comme une liste chaînée. Mais je ne suis plus sûr de ça, c'est à vérifier.