Je suis intéressé à effectuer plusieurs actions de base de données en parallèle. J'ai joué avec Perl Parallel :: ForkManager mais je ne l'ai pas encore utilisé avec des bases de données. J'ai lu que la connectivité de base de données est not supported very well avec ceci. Est-ce que quelqu'un a de l'expérience avec ça?Perl Parallel :: ForkManager avec les gestionnaires de base de données DBI
À titre d'exemple je serais probablement frai un appel système (qui fait le travail de DBI) NOT code brut, à savoir
#!/opt/local/bin/perl -w
use strict;
use Parallel::ForkManager;
$| = 1;
my $max_procs = 10;
my $pm = new Parallel::ForkManager($max_procs);
for (my $var = 0; $var <= 10; $var++) {
my $pid = $pm->start('proc'.$var) and next;
sleep (2);
system("./DBworker.pl $var");
$pm->finish(0);
}
print "Waiting for child procs\n";
$pm->wait_all_children;
print "complete!\n";
Ce script est-il supposé fonctionner sous Windows? – MeirG
@MeirG puisque Windows ne supporte pas nativement fork (il est émulé avec quelques différences), je ne peux pas le dire avec certitude. Je n'ai pas de machine Windows à tester, mais si vous rencontrez des problèmes, signalez simplement ce qui ne va pas comme une nouvelle question. –