Prog2.java

/**
 * Lance un nouveau processus léger (de classe MyRunnable) avant
 * d'exécuter des instructions d'affichage dans le processus léger
 * initial, en concurrence avec celles du processus léger MyRunnable.
 */
public class Prog2 {
  // La méthode main() est exécutée par le processus léger initial
  public static void main(String[] args) throws InterruptedException {
    // Création d'un objet représentant le code à exécuter
    MyRunnable code = new MyRunnable();    
    // Création du contrôleur d'un nouveau processus léger avec
    // spécification de son code à exécuter en argument du constructeur
    Thread t = new Thread(code);
    // Démarrage de ce nouveau processus léger, en concurrence
    // avec le processus léger courant (initial)
    t.start();
    for (int i=0; i<5; i++) {
      System.out.println("Processus léger initial, itération " + i);
      // Suspendre l'exécution du processus léger 0,3 seconde
      Thread.sleep(300);
    }
    System.out.println("Le processus léger initial se termine");
  }
}