Java ThreadGroup getParent()方法

2019-10-16 22:24:00

ThreadGroup類的getParent()方法返回執行緒組的父級。

語法

public final ThreadGroup getParent()

返回

此方法返回執行緒組的父級。

異常

  • SecurityException:如果當前執行緒無法修改執行緒組。

範例

class NewThread extends Thread   
{  
    NewThread(String threadname, ThreadGroup tg)  
    {  
        super(tg, threadname);  
    }  
    public void run()  
    {  
        for(int i = 0;i < 10;i++)   
        {  
            i++;  
        }  
        System.out.println(Thread.currentThread().getName() + " completed executing");  
    }  
}  
public class ThreadGroupGetParentExp   
{  
    public static void main(String arg[]) throws InterruptedException,  
        SecurityException, Exception  
    {  
        // creating a parent threadGroup  
        ThreadGroup tg1 = new ThreadGroup("Parent thread");  
        // creating a child threadGroup   
        ThreadGroup tg2 = new ThreadGroup(tg1, "Child thread");  

        // creating a thread   
        NewThread t1 = new NewThread("Thread-1", tg1);  
        System.out.println("Starting Thread-1");  
        t1.start();  

       // creating another thread   
        NewThread t2 = new NewThread("Thread-2", tg2);  
        System.out.println("Starting Thread-2");  
        t2.start();  

        // print the parentThreadGroup of parent thread  
        System.out.println("ParentThreadGroup for " +  
            tg1.getName() + " is " + tg1.getParent().getName());  
        // print the parentThreadGroup of child thread  
        System.out.println("ParentThreadGroup for " +  
            tg2.getName() + " is " + tg2.getParent().getName());      
    }  
}

執行上面範例程式碼,得到以下結果:

Starting Thread-1
Starting Thread-2
ParentThreadGroup for Parent thread is main
ParentThreadGroup for Child thread is Parent thread
Thread-1 completed executing
Thread-2 completed executing