class MyThread extends Thread
{
private int delay;
private int count;
public MyThread(String msg, int delay, int count)
{
super(msg); // Optional thread name
this.delay = delay;
this.count = count;
}
public void run()
{
for (int i = 0; i < count; ++i)
{
try
{
Thread.sleep(delay);
display();
}
catch (InterruptedException x)
{
// Won't happen in this example
}
}
}
void display()
{
String s = getName();
for (int i = 0; i < s.length(); ++i)
System.out.print(s.charAt(i));
System.out.println();
}
}
class Independent5
{
public static void main(String[] args)
{
Thread t1 = new MyThread("DessertTopping", 100, 8);
Thread t2 = new MyThread("FloorWax", 200, 4);
t1.start();
t2.start();
}
}
/* Output:
DessertTopping
FloorWax
DessertTopping
DessertTopping
FloorDessertTopping
Wax
DessertTopping
FloorWax
DessertTopping
DessertTopping
FloDessertTopping
orWax
*/
End of Listing