Je veux indexer tous mes fichiers musicaux et les stocker dans une base de données. J'ai cette fonction que j'appelle recusively, en commençant par la racine de mon lecteur de musique.C# Comment boucler un grand nombre de dossiers et de fichiers récursivement sans utiliser une énorme quantité de mémoire
à savoir
start > ReadFiles(C:\music\);
ReadFiles(path){
foreach(file)
save to index;
foreach(directory)
ReadFiles(directory);
}
Cela fonctionne très bien, mais lors de l'exécution du programme de la quantité de mémoire utilisée croît et se développe et .. enfin mon système à court de mémoire.
Quelqu'un at-il une meilleure approche qui n'a pas besoin de 4 Go de RAM pour effectuer cette tâche?
Cordialement, Tys
Veuillez poster le code actuel. Il n'y a rien de fondamentalement faux dans votre approche. –
La récursivité n'est pas limitée par la quantité de mémoire disponible, mais par la taille de la pile, donc si vous manquez de mémoire, il semble que vous conserviez les données trop longtemps. –
Je ne peux pas imaginer que vous avez assez de musique pour exiger beaucoup d'espace. Etes-vous sûr de ne pas avoir un débordement de pile ou d'avoir entré une boucle sans fin à un moment donné? –