public class org.apache.logging.log4j.core.util.Log4jThreadFactory extends java.lang.Object implements java.util.concurrent.ThreadFactory
{
private static final java.lang.String PREFIX;
private static final java.util.concurrent.atomic.AtomicInteger FACTORY_NUMBER;
private static final java.util.concurrent.atomic.AtomicInteger THREAD_NUMBER;
private final boolean daemon;
private final java.lang.ThreadGroup group;
private final int priority;
private final java.lang.String threadNamePrefix;
public static org.apache.logging.log4j.core.util.Log4jThreadFactory createDaemonThreadFactory(java.lang.String)
{
java.lang.String v;
org.apache.logging.log4j.core.util.Log4jThreadFactory v;
v := @parameter: java.lang.String;
v = new org.apache.logging.log4j.core.util.Log4jThreadFactory;
specialinvoke v.<org.apache.logging.log4j.core.util.Log4jThreadFactory: void <init>(java.lang.String,boolean,int)>(v, 1, 5);
return v;
}
public static org.apache.logging.log4j.core.util.Log4jThreadFactory createThreadFactory(java.lang.String)
{
java.lang.String v;
org.apache.logging.log4j.core.util.Log4jThreadFactory v;
v := @parameter: java.lang.String;
v = new org.apache.logging.log4j.core.util.Log4jThreadFactory;
specialinvoke v.<org.apache.logging.log4j.core.util.Log4jThreadFactory: void <init>(java.lang.String,boolean,int)>(v, 0, 5);
return v;
}
public void <init>(java.lang.String, boolean, int)
{
java.lang.ThreadGroup v;
java.lang.SecurityManager v;
java.util.concurrent.atomic.AtomicInteger v;
java.lang.Thread v;
int v, v;
java.lang.String v, v;
org.apache.logging.log4j.core.util.Log4jThreadFactory v;
boolean v;
v := @this: org.apache.logging.log4j.core.util.Log4jThreadFactory;
v := @parameter: java.lang.String;
v := @parameter: boolean;
v := @parameter: int;
specialinvoke v.<java.lang.Object: void <init>()>();
v = <org.apache.logging.log4j.core.util.Log4jThreadFactory: java.util.concurrent.atomic.AtomicInteger FACTORY_NUMBER>;
v = virtualinvoke v.<java.util.concurrent.atomic.AtomicInteger: int getAndIncrement()>();
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (int,java.lang.String)>(v, v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("TF-\u0001-\u0001-");
v.<org.apache.logging.log4j.core.util.Log4jThreadFactory: java.lang.String threadNamePrefix> = v;
v.<org.apache.logging.log4j.core.util.Log4jThreadFactory: boolean daemon> = v;
v.<org.apache.logging.log4j.core.util.Log4jThreadFactory: int priority> = v;
v = staticinvoke <java.lang.System: java.lang.SecurityManager getSecurityManager()>();
if v == null goto label;
v = virtualinvoke v.<java.lang.SecurityManager: java.lang.ThreadGroup getThreadGroup()>();
goto label;
label:
v = staticinvoke <java.lang.Thread: java.lang.Thread currentThread()>();
v = virtualinvoke v.<java.lang.Thread: java.lang.ThreadGroup getThreadGroup()>();
label:
v.<org.apache.logging.log4j.core.util.Log4jThreadFactory: java.lang.ThreadGroup group> = v;
return;
}
public java.lang.Thread newThread(java.lang.Runnable)
{
org.apache.logging.log4j.core.util.Log4jThread v;
java.lang.ThreadGroup v;
java.lang.Runnable v;
java.util.concurrent.atomic.AtomicInteger v;
int v, v, v, v;
java.lang.String v, v;
org.apache.logging.log4j.core.util.Log4jThreadFactory v;
boolean v, v, v;
v := @this: org.apache.logging.log4j.core.util.Log4jThreadFactory;
v := @parameter: java.lang.Runnable;
v = new org.apache.logging.log4j.core.util.Log4jThread;
v = v.<org.apache.logging.log4j.core.util.Log4jThreadFactory: java.lang.ThreadGroup group>;
v = v.<org.apache.logging.log4j.core.util.Log4jThreadFactory: java.lang.String threadNamePrefix>;
v = <org.apache.logging.log4j.core.util.Log4jThreadFactory: java.util.concurrent.atomic.AtomicInteger THREAD_NUMBER>;
v = virtualinvoke v.<java.util.concurrent.atomic.AtomicInteger: int getAndIncrement()>();
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String,int)>(v, v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("\u0001\u0001");
specialinvoke v.<org.apache.logging.log4j.core.util.Log4jThread: void <init>(java.lang.ThreadGroup,java.lang.Runnable,java.lang.String,long)>(v, v, v, 0L);
v = virtualinvoke v.<java.lang.Thread: boolean isDaemon()>();
v = v.<org.apache.logging.log4j.core.util.Log4jThreadFactory: boolean daemon>;
if v == v goto label;
v = v.<org.apache.logging.log4j.core.util.Log4jThreadFactory: boolean daemon>;
virtualinvoke v.<java.lang.Thread: void setDaemon(boolean)>(v);
label:
v = virtualinvoke v.<java.lang.Thread: int getPriority()>();
v = v.<org.apache.logging.log4j.core.util.Log4jThreadFactory: int priority>;
if v == v goto label;
v = v.<org.apache.logging.log4j.core.util.Log4jThreadFactory: int priority>;
virtualinvoke v.<java.lang.Thread: void setPriority(int)>(v);
label:
return v;
}
static void <clinit>()
{
java.util.concurrent.atomic.AtomicInteger v, v;
v = new java.util.concurrent.atomic.AtomicInteger;
specialinvoke v.<java.util.concurrent.atomic.AtomicInteger: void <init>(int)>(1);
<org.apache.logging.log4j.core.util.Log4jThreadFactory: java.util.concurrent.atomic.AtomicInteger FACTORY_NUMBER> = v;
v = new java.util.concurrent.atomic.AtomicInteger;
specialinvoke v.<java.util.concurrent.atomic.AtomicInteger: void <init>(int)>(1);
<org.apache.logging.log4j.core.util.Log4jThreadFactory: java.util.concurrent.atomic.AtomicInteger THREAD_NUMBER> = v;
return;
}
}