cs_Taz1984
Messages postés47Date d'inscriptionlundi 20 juillet 2009StatutMembreDernière intervention13 mars 2013
-
31 juil. 2009 à 16:11
asma206
Messages postés5Date d'inscriptionmardi 3 mai 2011StatutMembreDernière intervention13 juin 2011
-
16 mai 2011 à 00:27
Bonjour,
Je suis en train de coder une classe qui permet de prendre en entrée un fichier et stocker les informations dans une base données.
Cette classe a pour méthode une fonction X .
Et en fait je voudrai que une autre fonctions Y puisse exécuter en même temps plusieurs fonction Y qui contiendrai des paramètres et donc les paramètres ne seront pas les mêmes.
Par exemple : J'appel la fonction X -> Appel Fonction Y (Fichier1, Cible BDD) et je veux en même temps que la même fonction Y traite un Fichier2 Fontion Y (Fichier 2, Cible BDD). C'est bizarre mais j'aimerai bien le faire pour gagner en performance d'execution.
On m'a préconisé d'utiliser les threads j'ai lu quelsque du tout mais je vois pas ou je dois placer mon theads et comment je peux m'y prendre réélement ?
kirua12
Messages postés1155Date d'inscriptionsamedi 17 janvier 2004StatutMembreDernière intervention29 avril 20117 31 juil. 2009 à 17:04
Salut,
il faut découper tes méthodes dans 2 classes : la 1ère sera le lanceur et la 2nde sera l'éxécuteur.
en faisant simple, on a ça :
public Class A {
void methodeX(){
...
for(/*tous les parametres*/){
new Thread(new B(...)).start();
}
...
}
}
public class B implements Runnable{
...
public void run(){
enregisterBD(lectureFichier(...);
}
}
Après tout dépend si tu veux attendre la fin des threads pour continuer le traitement, du nombre de threads que tu veux en parallèle ...
Regarde aussi le package java.util.concurrent, il y a toutes les classes nécessaires pour la gestion des threads (executor ...)