Class ThreadCreator

java.lang.Object
org.jgroups.util.ThreadCreator

public class ThreadCreator extends Object
Since:
Helper class to create regular or virtual threads. Virtual threads are not supported for versions less than Java 17.
  • Field Details

    • LOG

      private static final Log LOG
    • LOOKUP

      private static final MethodHandles.Lookup LOOKUP
    • OF_VIRTUAL_NAME

      private static final String OF_VIRTUAL_NAME
      See Also:
    • OF_VIRTUAL_CLASS

      private static final Class<?> OF_VIRTUAL_CLASS
    • OF_VIRTUAL

      private static final MethodHandle OF_VIRTUAL
    • CREATE_VTHREAD

      private static final MethodHandle CREATE_VTHREAD
    • EXECUTORS_NEW_VIRTUAL_THREAD_FACTORY

      private static final MethodHandle EXECUTORS_NEW_VIRTUAL_THREAD_FACTORY
  • Constructor Details

    • ThreadCreator

      public ThreadCreator()
  • Method Details

    • hasVirtualThreads

      public static boolean hasVirtualThreads()
    • getCreateVThreadHandle

      protected static MethodHandle getCreateVThreadHandle()
    • getOfVirtualClass

      protected static Class<?> getOfVirtualClass()
    • getOfVirtualHandle

      protected static MethodHandle getOfVirtualHandle()
    • getNewVirtualThreadFactoryHandle

      protected static MethodHandle getNewVirtualThreadFactoryHandle()
    • createThread

      public static Thread createThread(Runnable r, String name, boolean daemon, boolean virtual)
    • createThreadPool

      public static ExecutorService createThreadPool(int min_threads, int max_threads, long keep_alive_time, boolean virtual_threads, Log log)
    • createThreadPool

      public static ExecutorService createThreadPool(int min_threads, int max_threads, long keep_alive_time, String rejection_policy, BlockingQueue<Runnable> queue, ThreadFactory factory, boolean useVirtualThreads, Log log)