import java.util.Random;

/** La classe représentant un code pouvant être exécuté vian un Thread.
 * Son <a href="DuCode.java.html">code source</a>.
 * @author Jean-Baptiste Yunès
 */
public class DuCode implements Runnable {
  private String nom;
  private Random alea;
  /** Ce constructeur permet de nommer l'instance via un nom. */
  public DuCode(String nom) {
    this.nom = nom;
    alea = new Random();
  }
  /** Le code consiste à afficher 10 fois son propre nom; les affichages
   * étant espacés d'un délai variable de 0 à 500ms. */
  public void run() {
    for (int i=0; i<10; i++) {
      try {
        Thread.sleep(alea.nextInt()%5*100);
      } catch(Exception e) {
      } finally {
        System.out.println("Je suis "+nom+" i="+i);
      }
    }
  }
}