SecurityManager getThreadGroup() Method



The java.lang.SecurityManager.getThreadGroup() method returns the thread group into which to instantiate any new thread being created at the time this is being called. By default, it returns the thread group of the current thread. This should be overridden by a specific security manager to return the appropriate thread group.


Following is the declaration for java.lang.SecurityManager.getThreadGroup() method

public ThreadGroup getThreadGroup()


  • NA

Return Value

This method returns a ThreadGroup that new threads are instantiated into


  • NA


Our examples require that the permissions for each command is blocked. A new policy file was set that allows only the creating and setting of our Security Manager. The file is in C:/java.policy and contains the following text:

grant {
  permission java.lang.RuntimePermission "setSecurityManager";
  permission java.lang.RuntimePermission "createSecurityManager";
  permission java.lang.RuntimePermission "usePolicy";

The following example shows the usage of lang.SecurityManager.getThreadGroup() method.

package com.tutorialspoint;

public class SecurityManagerDemo {

   public static void main(String[] args) {

   // set the policy file as the system securuty policy
   System.setProperty("", "file:/C:/java.policy");

   // create a security manager
   SecurityManager sm = new SecurityManager();

   // set the system security manager
   // get the thread group
   ThreadGroup con = sm.getThreadGroup();

   // print the the thread group
   System.out.println("" + con);


Let us compile and run the above program, this will produce the following result: