Java Program 8 – Thread

Program

class MyThread extends Thread {

    public void run(){
    
        try {
            for(int i=10; i>=0; i–) {
        
                Thread.sleep(250);
                System.out.println("My Thread count " + i);
            
            }
        }
        catch(Exception e) {
        
            System.out.println(e);
        }
    }

}

class MyThread2 extends Thread {

    public void run(){
        
        try {
            for(int i=10; i>=0; i–) {
        
                Thread.sleep(1000);
                System.out.println("MyThread2 count " + i);
                    
            }
        }
        catch(Exception e) {
        
            System.out.println(e);
        }
    }

}

class MyThread3 extends Thread {

    Thread t1;
    public MyThread3(Thread t2) {
    
        this.t1=t2;
    }
    
    public void run(){
        
        try {
            for(int i=10; i>=0; i–) {
        
                Thread.sleep(1000);
                System.out.println("MyThread3 count " + i);
                System.out.println("Main –> " + t1.isAlive());
                    
            }
        }
        catch(Exception e) {
        
            System.out.println(e);
        }
    }

}

class TestThread {

    public static void main(String args[]){
    
        Thread mainThread=Thread.currentThread();
        System.out.println(mainThread);
        MyThread myThread1=new MyThread();
        myThread1.start();
        
        //MyThread2 myThread2=new MyThread2();
        //myThread2.start();
        
        MyThread3 myThread3=new MyThread3(mainThread);
        myThread3.start();
        try {
        
            myThread3.join();
        
            for(int i=0; i<=10; i++) {
            
                mainThread.sleep(500);
                System.out.println("Main thread count " + i);
                
            }
        }
        catch(Exception e) {
        
            System.out.println(e);
        }
        
        System.out.println("Main       –> " + mainThread.isAlive());
        
        System.out.println("Mythread 1 –> " + myThread1.isAlive());
        System.out.println("Mythread 1 –> " + myThread3.isAlive());
        
    }

}

 


Output

D:\a5518\day4>javac TestThread.java

D:\a5518\day4>java TestThread
Thread[main,5,main]
My Thread count 10
My Thread count 9
My Thread count 8
My Thread count 7
MyThread3 count 10
Main –> true
My Thread count 6
My Thread count 5
My Thread count 4
My Thread count 3
MyThread3 count 9
Main –> true
My Thread count 2

 


 

You can leave a response, or trackback from your own site.

Leave a Reply