Saturday, 10 June 2017

Java Tutorial: Java Threads (Java Thread group hierarchy | Thread group in Java) ~ foundjava


Click here to watch in Youtube :

Click the below Image to Enlarge 
Java Tutorial: Java Threads (Java Thread group hierarchy | Thread group in Java) 
MyRunnable.java
public class MyRunnable implements Runnable
{
    public void run()
    {
        try
        {
            Thread.sleep(1000);
        }
        catch (InterruptedException e)
        {
            e.printStackTrace();
        }
        String threadName = Thread.currentThread().getName();
        /*
         * Returns the name of this thread group.
         */
        String threadGroupName = Thread.currentThread().getThreadGroup()
                .getName();

        String parentThreadGroupName = Thread.currentThread().getThreadGroup()
                .getParent().getName();

        System.out.println("Run by = " + threadName + " , Thread GroupName = "
                + threadGroupName + "\n , Parent Thread GroupName = "
                + parentThreadGroupName+"\n");
        
    }
}
ThreadGroupDemo.java
public class ThreadGroupDemo
{
    public static void main(String[] args) throws InterruptedException
    {
        MyRunnable myRunnable = new MyRunnable();

        ThreadGroup parentTg = new ThreadGroup("Parent ThreadGroup");

        Thread t1 = new Thread(parentTg, myRunnable, "thread1");
        Thread t2 = new Thread(parentTg, myRunnable, "thread2");

        t1.start();
        t2.start();

        ThreadGroup childTg = new ThreadGroup(parentTg, "Child ThreadGroup");

        Thread t3 = new Thread(childTg, myRunnable, "thread3");
        Thread t4 = new Thread(childTg, myRunnable, "thread4");
        Thread t5 = new Thread(childTg, myRunnable, "thread5");

        t3.start();
        t4.start();
        t5.start();

    }
}
Output
Run by = thread3 , Thread GroupName = Child ThreadGroup
 , Parent Thread GroupName = Parent ThreadGroup

Run by = thread2 , Thread GroupName = Parent ThreadGroup
 , Parent Thread GroupName = main

Run by = thread1 , Thread GroupName = Parent ThreadGroup
 , Parent Thread GroupName = main

Run by = thread5 , Thread GroupName = Child ThreadGroup
 , Parent Thread GroupName = Parent ThreadGroup

Run by = thread4 , Thread GroupName = Child ThreadGroup
 , Parent Thread GroupName = Parent ThreadGroup


Click the below link to download the code:

CLICK HERE

No comments:

Post a Comment