我想知道为什么Java为线程引入了contexClassLoader。我知道它通常由必须动态查找和加载类的框架和应用程序服务器使用。
但是我不明白为什么 Java 引入了 contexClassLoader,因为我们只需添加将保存必要的类加载器的字段即可实现相同的功能。
class ThreadWithCustomClassloader extends Thread
{
ClassLoader threadClassLoader;
public void run()
{
//use threadClassLoader to dynamically find and load classes
}
}
最佳答案
我很困惑 - 类加载器的实例变量正是 Thread 类用来实现这一点的。您的解决方案有何不同?
你介意二传手吗?设置类加载器对于能够在完全不同的环境(Web 应用程序)中重用相同的线程(例如在 servlet 容器中)非常重要。线程实例被认为是昂贵的......
关于java - 为什么我们需要上下文类加载器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10534160/