try{ final Thread t1 = new Thread(){ @Override public void run(){ fonctionQuiCrééUnFichier(); } }; t1.start(); new Thread(){ @Override public void run(){ t1.join(); fonctionQuiUtiliseLeFichier(); } } }catch{..}
fonctionsA(); barreDeProgression();//Cette barre s'affiche pendant 4,5s et est INDEPENDANTE //du reste du programme. sleep(4500); fonctionsB();
Thread t1{ fonctionsA(); barreDeProgression(); }.start(); Thread 2{ t1.join(); sleep(4500); fonctionsB(); }.start();
final Thread t1 = new Thread(){ @Override public void run(){ var = fonctionQuiCrééUnFichier(); } };
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre questionpublic class MonOutil { public Donnees lancement() throws IOException, Exception { //DECLARATIONS File fichierSource; File fichierDestination = new File("C:\\Windows\\Temp\\nouveau.pdf"); Donnees donnees = new Donnees(); Progression progress = new Progression(); try { //Sélection du fichier donnees.fichier = choisirFichier(); System.out.println("Le fichier choisi est : " + donnees.fichier); //Copie du fichier et renommage fichierSource = new File(donnees.fichier); copierFichier(fichierSource, fichierDestination); System.out.println("C'est copié."); //Extraction Métadata extraireMetaData(fichierDestination); //progress.lance_progres(45);//Dure 4,5s. Thread.sleep(4500); donnees = lireFichier(donnees); } catch (Exception e) { e.printStackTrace(); } return donnees; } public static void copierFichier(File src, File dest) throws IOException {...} public static String choisirFichier() throws Exception {...} public static void extraireMetaData(File adresseFichier) {...} public static Donnees lireFichier(Donnees donnees) {...} }
public Donnees lancement() throws IOException, Exception { //DECLARATIONS File fichierSource; File fichierDestination = new File("C:\\Windows\\Temp\\nouveau.pdf"); Donnees donnees = new Donnees(); Progression progress = new Progression(); final Thread t1 = new Thread() { //@Override public void run() { try { //Sélection du fichier donnees.fichier = choisirFichier(); System.out.println("Le fichier choisi est : " + donnees.fichier); //Copie du fichier et renommage fichierSource = new File(donnees.fichier); copierFichier(fichierSource, fichierDestination); System.out.println("C'est copié."); //Extraction Métadata extraireMetaData(fichierDestination); } catch (Exception e) { e.printStackTrace(); } } }; t1.start(); new Thread() { //@Override public void run() { try { t1.join(); progress.lance_progres(45);//Dure 4,5s. donnees = lireFichier(donnees); } catch (Exception e) { e.printStackTrace(); } } }; return donnees; }
public class Machin { //DECLARATIONS private File fichierSource; private File fichierDestination = new File("C:\\Windows\\Temp\\nouveau.pdf"); private Donnees donnees = new Donnees(); private Progression progress = new Progression(); public Donnees lancement() throws IOException, Exception { final Thread t1 = new Thread() { //@Override public void run() { try { //Sélection du fichier donnees.fichier = choisirFichier(); System.out.println("Le fichier choisi est : " + donnees.fichier); //Copie du fichier et renommage fichierSource = new File(donnees.fichier); copierFichier(fichierSource, fichierDestination); System.out.println("C'est copié."); //Extraction Métadata extraireMetaData(fichierDestination); } catch (Exception e) { e.printStackTrace(); } } }; t1.start(); new Thread() { //@Override public void run() { try { t1.join(); progress.lance_progres(45);//Dure 4,5s. donnees = lireFichier(donnees); } catch (Exception e) { e.printStackTrace(); } } }; return donnees; } }
Thread t2 = new Thread() { //@Override public void run() { try { t1.join(); progress.lance_progres(45);//Dure 4,5s. donnees = lireFichier(donnees); } catch (Exception e) { e.printStackTrace(); } } }; t2.start();
public final void join() throws InterruptedException Waits for this thread to die.
public class Machin { //DECLARATIONS private File fichierSource; private File fichierDestination = new File("C:\\Windows\\Temp\\nouveau.pdf"); private Donnees donnees = new Donnees(); private Progression progress = new Progression(); public Donnees lancement() throws IOException, Exception { final Thread t1 = new Thread() { //@Override public void run() { try { //Sélection du fichier donnees.fichier = choisirFichier(); System.out.println("Le fichier choisi est : " + donnees.fichier); //Copie du fichier et renommage fichierSource = new File(donnees.fichier); copierFichier(fichierSource, fichierDestination); System.out.println("C'est copié."); //Extraction Métadata extraireMetaData(fichierDestination); System.out.println("t1 termine"); } catch (Exception e) { e.printStackTrace(); } } }; t1.start(); new Thread() { //@Override public void run() { try { t1.join(); System.out.println("t2 commence"); progress.lance_progres(45);//Dure 4,5s. donnees = lireFichier(donnees); } catch (Exception e) { e.printStackTrace(); } } }; return donnees; } }
new Thread(){ @Override public void run(){ progress.lance_progres(); } }.start(); donnees = lireFichier(donnees);
public class Machin{ //déclarations public Donnees lancement(){ //Sélection du fichier donnees.fichier = choisirFichier(); System.out.println("Le fichier choisi est : " + donnees.fichier); //Copie du fichier et renommage fichierSource = new File(donnees.fichier); copierFichier(fichierSource, fichierDestination); System.out.println("C'est copié."); //Extraction Métadata extraireMetaData(fichierDestination); progress.lance_progres(45);//Dure 4,5s. while(conditionSEMAPHORE){ //Attendre tant que conditionSEMAPHORE est nul } donnees = lireFichier(donnees); return donnees; } } public class Progression{ //Déclarations public void lance_progres(int rapidite){ progr.go(rapidite); } public void go(int rap){ //blabla monThread = new Thread(new MonRunnable()); monThread.start(); } public class MonRunnable implements Runnable { public void run() { for{ //Dure 4,5 secondes } conditionSEMAPHORE = true;//SEMAPHORE disant "c'est bon tu peux y aller" } } }