Saturday, 10 June 2017

Java Tutorial: Java Threads (How to check Thread group is the parent of another thread group) ~ foundjava


Click here to watch in Youtube :

MyRunnable.java
public class MyRunnable implements Runnable
{
    public void run()
    {
        try
        {
            Thread.sleep(1000);
        }
        catch (InterruptedException e)
        {
            e.printStackTrace();
        }
        String threadName = Thread.currentThread().getName();

        System.out.println("Run by = " + threadName );

    }
}
ThreadGroupDemo.java
/*
 * public final boolean parentOf(ThreadGroup g)
 * 
 * Tests if this thread group is either the thread group
 * argument or one of its ancestor thread groups.
 */
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");

        t1.start();

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

        Thread t2 = new Thread(childTg, myRunnable, "thread2");
        
        t2.start();

        // determine which ThreadGroup is parent
        boolean isParent = parentTg.parentOf(childTg);
        System.out.println(parentTg.getName() + " is the parent of "
                + childTg.getName() + "? " + isParent);

        isParent = childTg.parentOf(parentTg);
        System.out.println(childTg.getName() + " is the parent of "
                + parentTg.getName() + "? " + isParent);

    }
}
Output
Parent ThreadGroup is the parent of Child ThreadGroup? true
Child ThreadGroup is the parent of Parent ThreadGroup? false
Run by = thread2
Run by = thread1

Click the below link to download the code:

CLICK HERE

No comments:

Post a Comment