用户URL请求 调用应用入口文件(通常是网站的index.php) 载入框架入口文件(ThinkPHP.php) 记录初始运行时间和内存开销 系统常量判断及定义 载入框架引导类(Think\Think)并执行Think::start方法进行应用初始化 设置错误处理机制和自动加载机制 调用Think\ ...
分类:
Web程序 时间:
2016-05-17 09:41:49
阅读次数:
157
在上一篇JVM类加载机制详解(一)JVM类加载过程中说到,类加载机制的第一个阶段加载做的工作有:
1、通过一个类的全限定名(包名与类名)来获取定义此类的二进制字节流(Class文件)。而获取的方式,可以通过jar包、war包、网络中获取、JSP文件生成等方式。
2、将这个字节流所代表的静态存储结构转化为方法区的运行时数据结构。这里只是转化了数据结构,并未合并数据。(方法区就是用来存...
分类:
其他好文 时间:
2016-05-13 04:06:50
阅读次数:
204
同一个JVM的有线程、所有变量都处于同一个进程里,他们都使用JVM进程的内存区。当系统出现以下几种情况时JVM进程将被终止:
1、程序运行到最后正常结束
2、程序运行到使用System.exit()或Runtime.getRuntime().exit()代码处结束程序。
3、程序执行过程中遇到未捕获的异常或错误而结束。
4、程序所在平台强制结束了JVM进程
注意两次运行java程序,处于...
分类:
编程语言 时间:
2016-05-12 22:28:33
阅读次数:
244
类加载的过程包括: 加载class到内存,数据校验,转换和解析,初始化,使用using和卸载unloading过程。 除了解析阶段,其他过程的顺序是固定的。解析可以放在初始化之后,目的就是为了支持动态加载。 从java开发者来讲,我们并不关心具体细节,只要知道整个流程以及每个流程大体干了那些事情。 ...
分类:
编程语言 时间:
2016-05-08 11:51:00
阅读次数:
132
概述虚拟机把描述类的数据从Class文件加载到内存,并对数据进行校验、转换解析和初始化,最终形成可以被虚拟机直接使用的Java类型,这就是虚拟机的类加载机制。与那些在编译时需要进行链接工作的语言不同,在Java语言里,类型的加载、连接和初始化过程都是在程序运行期间完成的,例如import java.util.*下面包含很多类,但是,在程序运行的时候,虚拟机只会加载哪些我们程序需要的类。这种策略虽然会...
分类:
其他好文 时间:
2016-05-07 11:07:03
阅读次数:
162
懒加载(lazy),简单说就是延时、延迟加载。
在Hibernate框架应用中,就是当我们要访问的数据量过大时,使用缓存并不太合适,因为内存容量有限 ,为了减少系统资源的消耗,减少并发量,这时需要用懒加载机制来弥补这种缺陷,但是这并不意味用了懒加载总体性能就提高了。...
分类:
Web程序 时间:
2016-05-07 07:44:01
阅读次数:
335
首先Throws(抛出)几个自己学习过程中一直疑惑的问题:
1、什么是类加载?类加载的时机?
2、什么是类初始化?什么时候进行类初始化?
3、什么时候会为变量分配内存?
4、什么时候会为变量赋默认初值?什么时候会为变量赋人为设定的初值?
5、类加载器是什么?
6、如何编写一个自定义的类加载器?
首先,在代码编译后,就会生成JVM(Java虚拟机)能够识别的二进制字节流文件(*...
分类:
其他好文 时间:
2016-05-06 15:08:31
阅读次数:
252
原文出处: 朱小厮 在《Java虚拟机类加载机制》一文中详细阐述了类加载的过程,并举了几个例子进行了简要分析,在文章的最后留了一个悬念给各位,这里来揭开这个悬念。建议先看完《Java虚拟机类加载机制》这篇再来看这个,印象会比较深刻,如若不然,也没什么关系~~下面是程序代码: 1 2 3 4 5 6 ...
分类:
编程语言 时间:
2016-05-06 00:11:45
阅读次数:
162
原文出处: 朱小厮 看到这个题目,很多人会觉得我写我的java代码,至于类,JVM爱怎么加载就怎么加载,博主有很长一段时间也是这么认为的。随着编程经验的日积月累,越来越感觉到了解虚拟机相关要领的重要性。闲话不多说,老规矩,先来一段代码吊吊胃口。 1 2 3 4 5 6 7 8 9 10 11 12 ...
分类:
编程语言 时间:
2016-05-06 00:06:59
阅读次数:
284