public class Counter2 implements Runnable {
private static int totalNum = 0; // class-wide visibility
private int currentNum, loopLimit;
public Counter2(int loopLimit) {
this.loopLimit = loopLimit;
currentNum = totalNum++;
Thread t = new Thread(this);
t.start();
}
private void pause(double seconds) {
try { Thread.sleep(Math.round(1000.0*seconds)); }
catch(InterruptedException ie) {}
}
public void run() {
for(int i=0; i<loopLimit; i++) {
System.out.println("Counter " + currentNum + ": " + i);
pause(Math.random()); // Sleep for up to 1 second
}
}
}
|