- 博客(12)
- 收藏
- 关注
转载 Spring MVC - 请求处理
HttpServletBean 主要参与创建工作,没有涉及请求的处理。 FrameworkServlet 将所有的请求合并到了processRequest()。 protected final void processRequest(HttpServletReq...
2017-08-25 13:44:00
116
转载 jvm - 内存模型与线程
JVM 通过定义内存模型来屏蔽各种硬件和操作系统的内存访问差异,以实现让java程序在各平台都能达到一致的内存访问效果。 工作内存可以类比为CPU中的高速缓存。 主内存与物理硬件的主内存类比。 内存间交互 8中操作都是原子的(除了long、doubley允许例外)。 lock...
2017-08-25 10:12:00
115
转载 Spring MVC - 整体结构
整体结构 XXXAware:在spring中表示感知,如果在某个类中需要XXX,就可以通过实现XXXAware接口高速spring,spring通过接口的唯一方法setXXX。 XXXCappable:表示具有提供XXX的能力,spring需要XXX时通过getXXX()获得...
2017-08-25 10:11:00
110
转载 类加载机制
类加载时机 类的整个生命周期包括:加载、验证、准备、解析、初始化、使用、卸载。 什么情况下需要开始类加载过程的第一步:加载?jvm并没有进行强制的规定。但对于初始化阶段,jvm严格规定了只有5种情况必须立即对类进行初始化(而加载、验证、准备和解析自然需要在此之前): 遇到ne...
2017-08-22 10:50:00
95
转载 JVM - 类文件结构
class文件是一组以8位字节为基础单位的二进制流,各个数据项目严格按照顺序紧凑地排列在Class文件中,没有空隙和分隔符。当遇到需要占用8位以上的空间时,按照高位在前的方式分割成若干个8位字节存储。 class文件中只有两种数据类型:无符号数和表。 无符号属于基本的数据类型,以u1、u2...
2017-08-21 16:43:00
87
转载 JVM - 垃圾回收器与内存分配策略
确定哪些哪些内存需要回收。 什么时候回收。 如何回收。 判断对象是否可以回收 引用计数算法 给对象添加一个引用计数器,每当一个地方引用它时,计数器+1;当引用失效时,计数器-1。任何时刻计数器为0 的对象就是不可能再使用的对象。实现简单,判断效率高。但是它很难解决对象之间的互相循...
2017-08-21 15:16:00
99
转载 JVM - 内存模型
内存模型 程序计数器 当前线程所执行的字节码的行号指示器。通过改变计数器的值来选取下一条执行的字节码指令。每条线程都有独立的程序计数器,线程间互不影响。如果正在执行的是Native方法,则计数器为空。该区域是唯一一个没有没有规定OutOfMemeryError的区域。 J...
2017-08-21 10:51:00
80
转载 锁的优化及注意事项
有助于提高锁性能的建议 减少锁的持有时间:只在必要时进行同步 减少锁的粒度:减少锁定对象的范围(分割数据结构),从而减少锁冲突的可能。如concurrentHashMap 默认分为16个SEGMENT,。但是减少粒度会引入一个新的问题, 当系统需要取得全局锁时,消耗的资源会比较多...
2017-08-18 15:21:00
125
转载 JDK并发包 - 集合容器
CopyOnWriteArrayList 在读多写少的场合,该List 性能非常好。 只有在写 - 写 之间才需要同步等待。在写操作时,会进行加锁操作,并对数组进行复制,对副本数组进行写操作,然后替代原始数组,由于volatile,其他读操作可以立即察觉。对于读操作,则通过下标直接读取,...
2017-08-18 12:09:00
138
转载 JDK并发包 - 线程池
过多的线程会耗尽CPU和内存资源,虽然与进程相比,线程是一种轻量级的工具,但是其创建和关闭依然需要花费时间。 线程本身会占用内存空间,大量的线程会抢占宝贵的内存资源。大量的线程回收也会给GC带来压力,延长GC的停顿时间。 线程池可以让线程复用,可以节约不少创建和销毁线程的时间。 ...
2017-08-17 17:01:00
128
转载 JDK 并发包 - 同步控制
重入锁:ReentrantLock 相比synchronized, 重入锁有着显示的操作过程; ReentrantLock lock = newReentrantLock(); lock.lock(); lock.lock(); try{ //do something }f...
2017-08-16 17:34:00
119
转载 vmware 中 centos7 NAT网络 配置
vmware 中 centos7 网络 配置如下: VMware Virtual Ethernet Adapter for VMnet8 ipv4设置 虚拟网络编辑器VMnet8 设置 vmware nat 设置 centos7 ifcfg-ens33设置 ...
2016-12-23 12:58:00
111
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人