首页
学习
活动
专区
工具
TVP
发布

木木玲

专栏作者
72
文章
81549
阅读量
29
订阅数
ClassLoader 源码详解
ClassLoader是一个类加载器对象,负责去加载类。ClassLoader是一个抽象对象。给定了一个类的“二进制名称”,一个类加载器需要尝试去定位或者生成一个数据,该数据构成了一个定义的类。一个典型的策略就是转换名字(即,二进制名字)成一个文件名,然后从文件系统读取这个文件名包含的“字节码文件”。 注意,这里有两种方式来通过一个“二进制名称”来加载一个类: ① 定位 也就是说,表示这个类的数据已经存在了,类加载器去定位到这个存储的数据进行加载即可。比如,java.lang.String就是在rt.jar中存储的了,可以直接定位到。 ② 生成 一些在java代码中动态生成的类,而这些类的数据就是在运行期时由类加载器去生成的。比如,动态代理。
tomas家的小拨浪鼓
2019-08-07
7260
从 sun.misc.Launcher 类源码深入探索 ClassLoader
从 深入浅出 ClassLoader 一文中我已经通过大量的理论和示例对ClassLoader有了深入的了解。该文,我们将从 sun.misc.Launcher 源码对 ClassLoader 进行进一步的探索,也是除了示例外的另一个更本质的角度来验证我们之前说的理论。
tomas家的小拨浪鼓
2019-08-06
1.9K0
深入浅出 ClassLoader
“加载”是类加载的时机的第一阶段。 类从被加载到虚拟机内存中开始,到卸载出内存为止,它的整个生命周期包括(5个阶段): ① 加载(Loading) ② 连接(Linking)      [1] 验证(Verification)      [2] 准备(Preparation)      [3] 解析(Resolution) ③ 初始化(Initialization) ④ 使用(Using) ⑤ 卸载(Unloading)
tomas家的小拨浪鼓
2019-08-06
7530
大话 ThreadLocal
该类提供了线程本地变量。该变量不同于普通的副本,因为访问这个变量(通过 get 或 set 方法)的每个线程都是自己独立初始化该变量的。 ThreadLocal实例通常是Thread类中典型的静态私有属性,由于关联线程的状态(比如,user ID 或 Transaction ID)
tomas家的小拨浪鼓
2019-06-17
7050
小白入门——哈希算法
哈希(Hash)也称为散列,就是把任意长度的输入,通过散列算法,变换成固定长度的输出,这个输出值就是散列值。
tomas家的小拨浪鼓
2019-06-15
1.1K0
第十六章 异常检测
在接下来的一系列视频中,我将向大家介绍异常检测(Anomaly detection)问题。这是机器学习算法的一个常见应用。这种算法的一个有趣之处在于:它虽然主要用于非监督学习问题,但从某些角度看,它又类似于一些监督学习问题。
tomas家的小拨浪鼓
2019-03-19
7920
第十一章 应用机器学习的建议
该系列文章为,观看“吴恩达机器学习”系列视频的学习笔记。虽然每个视频都很简单,但不得不说每一句都非常的简洁扼要,浅显易懂。非常适合我这样的小白入门。 本章含盖 11.1 决定下一步做什么 11.2
tomas家的小拨浪鼓
2019-03-15
4070
第十二章 机器学习系统设计
该系列文章为,观看“吴恩达机器学习”系列视频的学习笔记。虽然每个视频都很简单,但不得不说每一句都非常的简洁扼要,浅显易懂。非常适合我这样的小白入门。 本章含盖 12.1 确定执行的优先级 12.2
tomas家的小拨浪鼓
2019-03-15
5280
第八章 正则化
在将 线性回归 和 logistic回归 应用到某些机器学习应用中时,会出现过度拟合问题,导致它们表现欠佳。 正则化能够改善或者减少过度拟合问题。
tomas家的小拨浪鼓
2019-03-11
5450
第一章 绪论:初识机器学习
该系列文章为,观看“吴恩达机器学习”系列视频的学习笔记。虽然每个视频都很简单,但不得不说每一句都非常的简洁扼要,浅显易懂。非常适合我这样的小白入门。
tomas家的小拨浪鼓
2019-03-04
3840
Netty 那些事儿 ——— Netty实现“流量整形”原理分析及实战
本文是Netty文集中“Netty 那些事儿”系列的文章。主要结合在开发实战中,我们遇到的一些“奇奇怪怪”的问题,以及如何正确且更好的使用Netty框架,并会对Netty中涉及的重要设计理念进行介绍。 Netty实现“流量整形”原理分析 流量整形 流量整形(Traffic Shaping)是一种主动调整流量输出速率的措施。流量整形与流量监管的主要区别在于,流量整形对流量监管中需要丢弃的报文进行缓存——通常是将它们放入缓冲区或队列内,也称流量整形(Traffic Shaping,简称TS)。当报文的发送
tomas家的小拨浪鼓
2018-06-27
3.7K0
ReentrantLock 源码浅析
ReentrantLock 介绍 一个可重入的互斥锁,它具有与使用{synchronized}方法和语句访问的隐式监视器锁相同的基本行为和语义,但它具有可扩展的能力。 一个ReentrantLock会被最后一次成功锁定(lock)的线程拥有,在还没解锁(unlock)之前。当锁没有被其他线程拥有的话,一个线程执行『lock』方法将会返回,获取锁成功。一个方法将会立即的返回,如果当前线程已经拥有了这个锁。可以使用『isHeldByCurrentThread』和『getHoldCount』来检查当前线程是否持有
tomas家的小拨浪鼓
2018-06-27
1.7K1
Netty in Action ——— The codec framework
本文是Netty文集中“Netty in action”系列的文章。主要是对Norman Maurer and Marvin Allen Wolfthal 的 《Netty in action》一书简要翻译,同时对重要点加上一些自己补充和扩展。 本章含盖 解码器、编码器、编解码器综述 Netty 的编解码类 Netty提供可以简化各种协议的自定义编解码器创建的组件。 什么是编解码器? 每个网络应用都会定义端之间传输的二进制字节该如何被解析和转换,从发送端到目标程序的数据类型。这个转换逻辑通过编解码器来
tomas家的小拨浪鼓
2018-06-27
6830
Netty 源码解析 ——— NioEventLoop 详解
本文是Netty文集中“Netty 源码解析”系列的文章。主要对Netty的重要流程以及类进行源码解析,以使得我们更好的去使用Netty。Netty是一个非常优秀的网络框架,对其源码解读的过程也是不断学习的过程。 NioEventLoop 通过前面的学习,我们对NioEventLoop做过如下几点简单的概述: ① NioEventLoop是一个基于JDK NIO的异步事件循环类,它负责处理一个Channel的所有事件在这个Channel的生命周期期间。 ② NioEventLoop的整个生命周期只
tomas家的小拨浪鼓
2018-06-27
2.1K1
Netty 源码解析 ——— Netty 优雅关闭流程
本文是Netty文集中“Netty 源码解析”系列的文章。主要对Netty的重要流程以及类进行源码解析,以使得我们更好的去使用Netty。Netty是一个非常优秀的网络框架,对其源码解读的过程也是不断学习的过程。 Netty的优雅关闭操作 Netty是通过『eventLoopGroup.shutdownGracefully()』操作来实现它的优雅关闭的。 我们先来看下shutdownGracefully方法的doc说明: /** * Signals this executor tha
tomas家的小拨浪鼓
2018-06-27
2.9K0
设计模式 ——— 模板方法模式
TEMPLATE METHOD(模板方法) ———— 类行为型模式 意图 定义一个操作中的算法骨架,而将一些步骤延迟到子类中。TemplateMethod使得子类可以不改变一个算法的结构即可重定义该算法的某些特定步骤。 适用性 需要固定定义算法骨架,实现一个算法的不变的部分,并把可变的行为留给子类来实现的情况; 各个子类中具有公共行为,应该抽取出来,集中在一个公共类中去实现,从而避免代码重复; 需要控制子类扩展的情况。模板方法模式会在特定的点来调用“hook”操作,这样只允许在这些点进行扩展;
tomas家的小拨浪鼓
2018-06-27
4080
没有更多了
社区活动
腾讯技术创作狂欢月
“码”上创作 21 天,分 10000 元奖品池!
Python精品学习库
代码在线跑,知识轻松学
博客搬家 | 分享价值百万资源包
自行/邀约他人一键搬运博客,速成社区影响力并领取好礼
技术创作特训营·精选知识专栏
往期视频·千货材料·成员作品 最新动态
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档