class sun.awt.shell.Win32ShellFolder2$ComTaskExecutor extends java.util.concurrent.ThreadPoolExecutor implements java.util.concurrent.ThreadFactory
  minor version: 0
  major version: 59
  flags: flags: (0x0020) ACC_SUPER
  this_class: sun.awt.shell.Win32ShellFolder2$ComTaskExecutor
  super_class: java.util.concurrent.ThreadPoolExecutor
{
  private static final sun.awt.shell.Win32ShellFolder2$ComTaskExecutor executor;
    descriptor: Lsun/awt/shell/Win32ShellFolder2$ComTaskExecutor;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private java.lang.Thread thread;
    descriptor: Ljava/lang/Thread;
    flags: (0x0002) ACC_PRIVATE

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=2, locals=0, args_size=0
         0: .line 1197
            new sun.awt.shell.Win32ShellFolder2$ComTaskExecutor
            dup
            invokespecial sun.awt.shell.Win32ShellFolder2$ComTaskExecutor.<init>:()V
            putstatic sun.awt.shell.Win32ShellFolder2$ComTaskExecutor.executor:Lsun/awt/shell/Win32ShellFolder2$ComTaskExecutor;
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  private void <init>();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=8, locals=2, args_size=1
        start local 0 // sun.awt.shell.Win32ShellFolder2$ComTaskExecutor this
         0: .line 1202
            aload 0 /* this */
            iconst_1
            iconst_1
            lconst_0
            getstatic java.util.concurrent.TimeUnit.DAYS:Ljava/util/concurrent/TimeUnit;
            new java.util.concurrent.LinkedBlockingQueue
            dup
            invokespecial java.util.concurrent.LinkedBlockingQueue.<init>:()V
            invokespecial java.util.concurrent.ThreadPoolExecutor.<init>:(IIJLjava/util/concurrent/TimeUnit;Ljava/util/concurrent/BlockingQueue;)V
         1: .line 1203
            aload 0 /* this */
            iconst_0
            invokevirtual sun.awt.shell.Win32ShellFolder2$ComTaskExecutor.allowCoreThreadTimeOut:(Z)V
         2: .line 1204
            aload 0 /* this */
            aload 0 /* this */
            invokevirtual sun.awt.shell.Win32ShellFolder2$ComTaskExecutor.setThreadFactory:(Ljava/util/concurrent/ThreadFactory;)V
         3: .line 1206
            new sun.awt.shell.Win32ShellFolder2$ComTaskExecutor$1
            dup
            aload 0 /* this */
            invokespecial sun.awt.shell.Win32ShellFolder2$ComTaskExecutor$1.<init>:(Lsun/awt/shell/Win32ShellFolder2$ComTaskExecutor;)V
            astore 1 /* shutdownHook */
        start local 1 // java.lang.Runnable shutdownHook
         4: .line 1216
            new sun.awt.shell.Win32ShellFolder2$ComTaskExecutor$2
            dup
            aload 0 /* this */
            aload 1 /* shutdownHook */
            invokespecial sun.awt.shell.Win32ShellFolder2$ComTaskExecutor$2.<init>:(Lsun/awt/shell/Win32ShellFolder2$ComTaskExecutor;Ljava/lang/Runnable;)V
            invokestatic java.security.AccessController.doPrivileged:(Ljava/security/PrivilegedAction;)Ljava/lang/Object;
            pop
         5: .line 1224
            return
        end local 1 // java.lang.Runnable shutdownHook
        end local 0 // sun.awt.shell.Win32ShellFolder2$ComTaskExecutor this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    6     0          this  Lsun/awt/shell/Win32ShellFolder2$ComTaskExecutor;
            4    6     1  shutdownHook  Ljava/lang/Runnable;

  public synchronized java.lang.Thread newThread(java.lang.Runnable);
    descriptor: (Ljava/lang/Runnable;)Ljava/lang/Thread;
    flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
    Code:
      stack=5, locals=3, args_size=2
        start local 0 // sun.awt.shell.Win32ShellFolder2$ComTaskExecutor this
        start local 1 // java.lang.Runnable task
         0: .line 1227
            new sun.awt.shell.Win32ShellFolder2$ComTaskExecutor$3
            dup
            aload 0 /* this */
            aload 1 /* task */
            invokespecial sun.awt.shell.Win32ShellFolder2$ComTaskExecutor$3.<init>:(Lsun/awt/shell/Win32ShellFolder2$ComTaskExecutor;Ljava/lang/Runnable;)V
            astore 2 /* comRun */
        start local 2 // java.lang.Runnable comRun
         1: .line 1237
            aload 0 /* this */
         2: .line 1239
            new sun.awt.shell.Win32ShellFolder2$ComTaskExecutor$4
            dup
            aload 0 /* this */
            aload 2 /* comRun */
            invokespecial sun.awt.shell.Win32ShellFolder2$ComTaskExecutor$4.<init>:(Lsun/awt/shell/Win32ShellFolder2$ComTaskExecutor;Ljava/lang/Runnable;)V
         3: .line 1238
            invokestatic java.security.AccessController.doPrivileged:(Ljava/security/PrivilegedAction;)Ljava/lang/Object;
            checkcast java.lang.Thread
         4: .line 1237
            putfield sun.awt.shell.Win32ShellFolder2$ComTaskExecutor.thread:Ljava/lang/Thread;
         5: .line 1252
            aload 0 /* this */
            getfield sun.awt.shell.Win32ShellFolder2$ComTaskExecutor.thread:Ljava/lang/Thread;
            areturn
        end local 2 // java.lang.Runnable comRun
        end local 1 // java.lang.Runnable task
        end local 0 // sun.awt.shell.Win32ShellFolder2$ComTaskExecutor this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    6     0    this  Lsun/awt/shell/Win32ShellFolder2$ComTaskExecutor;
            0    6     1    task  Ljava/lang/Runnable;
            1    6     2  comRun  Ljava/lang/Runnable;
    MethodParameters:
      Name  Flags
      task  final

  public synchronized boolean isAlreadyOnComThread();
    descriptor: ()Z
    flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // sun.awt.shell.Win32ShellFolder2$ComTaskExecutor this
         0: .line 1256
            invokestatic java.lang.Thread.currentThread:()Ljava/lang/Thread;
            aload 0 /* this */
            getfield sun.awt.shell.Win32ShellFolder2$ComTaskExecutor.thread:Ljava/lang/Thread;
            if_acmpne 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 0 // sun.awt.shell.Win32ShellFolder2$ComTaskExecutor this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lsun/awt/shell/Win32ShellFolder2$ComTaskExecutor;
}
SourceFile: "Win32ShellFolder2.java"
NestHost: sun.awt.shell.Win32ShellFolder2
InnerClasses:
  private ComTaskExecutor = sun.awt.shell.Win32ShellFolder2$ComTaskExecutor of sun.awt.shell.Win32ShellFolder2
  sun.awt.shell.Win32ShellFolder2$ComTaskExecutor$1
  sun.awt.shell.Win32ShellFolder2$ComTaskExecutor$2
  sun.awt.shell.Win32ShellFolder2$ComTaskExecutor$3
  sun.awt.shell.Win32ShellFolder2$ComTaskExecutor$4