Bonsoir tout le monde !
J'ai beaucoup de gros fichiers à récupérer sur plusieurs serveurs web (type 100Mo par fichier).
Je traite donc ma file avec plusieurs threads, mais quand j'en mets trop je me tape des beaux "out of memory", liés au fait que quand j'arrive a la fin de plusieurs fichiers, je me retrouve avec beaucoup de RAM occupée par leur stockage temporaire (du moins je suppose que LWP fonctionne de cette façon) avant vidage sur le disque.
J'aimerais donc changer ce comportement et envoyer directement le flux sur le disque dans le fichier de destination, ce qui me permettrait de ne plus avoir ce problème.
Voila mon code actuel :
Merci de vos suggestions
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 my $file = $res->filename; unless (-e $file) { print "$file\n"; open FILE,">$file" or die "Impossible de créer le fichier $file : $!\n"; binmode(FILE); print FILE $res->content; close(FILE); }
@+
Mr6
Partager