Class AEThreadVirtual

java.lang.Object
com.biglybt.core.util.AEThreadVirtual

public class AEThreadVirtual extends Object
  • Field Details

    • DISABLE_VIRTUAL_THREADS

      private static final boolean DISABLE_VIRTUAL_THREADS
      See Also:
    • available

      private static final boolean available
    • less_pinning

      private static final boolean less_pinning
    • TRACE_PINNING

      private static final boolean TRACE_PINNING
    • ofVirtual

      private static final Method ofVirtual
    • ThreadBuilder_name

      private static final Method ThreadBuilder_name
    • ThreadBuilder_start

      private static final Method ThreadBuilder_start
    • name

      private String name
    • thread

      private volatile Object thread
  • Constructor Details

    • AEThreadVirtual

      public AEThreadVirtual(String _name)
    • AEThreadVirtual

      public AEThreadVirtual(String _name, boolean _daemon)
  • Method Details

    • areBasicVirtualThreadsAvailable

      public static boolean areBasicVirtualThreadsAvailable()
      Use if internal code where pinning caused by synchronized methods in absent/limited
      Returns:
    • areBetterVirtualThreadsAvailable

      public static boolean areBetterVirtualThreadsAvailable()
      From Java 24 the issues with pinning caused by synchronized methods are very much reduced so use this in more liberal circumstances
      Returns:
    • run

      public static void run(String name, Runnable r)
    • setName

      public void setName(String _name)
    • start

      public void start(Runnable runnable)
    • interrupt

      public void interrupt()
    • main

      public static void main(String[] args)