Class UnloadableClassLoader

java.lang.Object
java.lang.ClassLoader
com.clickhouse.data.UnloadableClassLoader

public final class UnloadableClassLoader extends ClassLoader
Custom class loader for generated classes. It uses a thread-safe WeakHashMap to maintain relationship between class name(String) and class content(byte[]). The class will be only unloaded once there's no place referring to the class name and GC is triggered.
  • Field Details

    • HAS_ASM

      public static final boolean HAS_ASM
  • Constructor Details

    • UnloadableClassLoader

      public UnloadableClassLoader()
      Default constructor using Thread.getContextClassLoader() as parent.
    • UnloadableClassLoader

      public UnloadableClassLoader(ClassLoader parent)
      Constructs an unloadable class loader with specified parent class loader.
      Parameters:
      parent - optional class loader
  • Method Details