关于Thread.getContextClassLoader的使用场景问题
2015-12-22 15:39
381 查看
Thread context class loader存在的目的主要是为了解决parent delegation机制下无法干净的解决的问题。假如有下述委派链:
ClassLoader A -> System class loader -> Extension class loader -> Bootstrap class loader
那么委派链左边的ClassLoader就可以很自然的使用右边的ClassLoader所加载的类。
但如果情况要反过来,是右边的ClassLoader所加载的代码需要反过来去找委派链靠左边的ClassLoader去加载东西怎么办呢?没辙,parent delegation是单向的,没办法反过来从右边找左边。
这种情况下就可以把某个位于委派链左边的ClassLoader设置为线程的context class loader,这样就给机会让代码不受parent delegation的委派方向的限制而加载到类了。
http://hllvm.group.iteye.com/group/topic/38709
ClassLoader A -> System class loader -> Extension class loader -> Bootstrap class loader
那么委派链左边的ClassLoader就可以很自然的使用右边的ClassLoader所加载的类。
但如果情况要反过来,是右边的ClassLoader所加载的代码需要反过来去找委派链靠左边的ClassLoader去加载东西怎么办呢?没辙,parent delegation是单向的,没办法反过来从右边找左边。
这种情况下就可以把某个位于委派链左边的ClassLoader设置为线程的context class loader,这样就给机会让代码不受parent delegation的委派方向的限制而加载到类了。
http://hllvm.group.iteye.com/group/topic/38709
相关文章推荐
- SVM (support vector machine)
- a href=#与 a href=javascript:void(0) 的区别
- LeetCode(93) Restore IP Addresses
- 手机端
- BCE0019: '' is not a member of 'UnityEngine.Component'的问题
- jQuery学习笔记_选择器
- android四大组件介绍
- awakeFromNib初始化方法和Nib文件
- tomcat连接池配置详解
- 嵌入式Linux串口应用编程之串口配置
- 笔记本/台式电脑有线网络转无线wifi教程
- 添加.pch文件
- 翻译:走出类加载器迷宫
- 测试
- 一张图片在一个相应盒子中垂直居中
- browserify使用手册
- AT LINE SELECTION的用法
- Web Service开发
- freemarker打印word(目录,分页)
- 公交位置模拟工具