一、解释器与编译器 当虚拟机发现某个方法或代码块的运行特别频繁时,就会把这些代码认定为“热点代码” 。为了提高热点代码的执行效率,在运行时,虚拟机将会把这些代码编译成与本地平台相关的机器码,并进行各种层次的优化,完成这个任务的编译器称为即时编译器(JIT 编译器)。 即时编译器并不是虚拟机必需的部分 ...
分类:
其他好文 时间:
2018-07-29 15:22:01
阅读次数:
172
Java技术体系中所提倡的自动内存管理最终可以归结为自动化地解决两个问题:给对象分配内存以及回收分配给对象的内存。 对象的分配可能有以下几种方式: 1、JIT编译后被拆散为标量类型并间接地栈上分配 2、对象主要分配在新生代的Eden区上,如果启动了本地线程分配缓冲,将按线程优先在TLAB上分配 3、 ...
分类:
其他好文 时间:
2018-07-29 15:19:52
阅读次数:
159
Java 语言的 “编译期”其实可以分为3类编译过程: 前端编译器:把*.java文件转变成*.class文件的过程。 后端运行期编译器(JIT编译器):把字节码转变成机器码的过程。 静态提前编译器(AOT编译器):直接把*.java文件编译成本地机器代码的过程。 Javac这类编译器对代码的运行效 ...
分类:
其他好文 时间:
2018-07-29 15:13:25
阅读次数:
161
当我们写完HelloWorld.java文件后,计算机怎么知道我们要干什么?那就需要说下编译了(可见文章:JIT编译),这里也简单补充点: 1.编程语言: 编程语言分为高级语言和低级语言:C、C++、Java等属于高级语言;机器语言和汇编语言属于低级语言。那和编译有什么关系呢? 简而言之,编译就是把 ...
分类:
编程语言 时间:
2018-07-26 21:10:01
阅读次数:
173
图像一般是使用RGB模式,是一个三色数组 PIL库 图像变化(相反) 图像变化(灰度) 图像变化(色彩变淡) 图像变化(色彩变深) 图像的手绘效果 手绘特点: 1.黑白灰色系 2.边界较重 3.相同相近的色彩趋近白色 4.有光源 ...
分类:
其他好文 时间:
2018-07-26 16:18:17
阅读次数:
203
前言 简单的针对JAVA虚拟机(JVM)相关知识做一个总结,从此章开始这是一个系列文章,包括内容有; 1 前端编译,AOT(静态编译),JIT即时编译 2 字节码文件的结构,类加载机制以及运行时内存区域 3 关于对象的创建,内存的分配,访问的定位,判断对象是否可用,内存的回收 4 对象内存分配及垃圾 ...
分类:
其他好文 时间:
2018-07-18 17:19:46
阅读次数:
147
系统最优化,效率最大化 一个不忘:动作经济原则 二大支柱:JIT(Just In Time), 自动化 三现管理:现场、现物、现况 四大原则:消除、合并、重排、简化 五大分析:操作、搬运、检验、储存、等待 六个提问:What, Where, When, Who, How, Why 七大手法:人机、流 ...
分类:
其他好文 时间:
2018-07-15 21:13:15
阅读次数:
250
在此前的另外一篇文章讨论过 opcache:php 性能优化之opcache - 让你的php性能提升 50% 再来复习一下吧,导致 php 慢的各种因素中解析性语言的特性可以说是罪魁祸首,再加上,每次请求完都释放请求时所加载的全部文件,因此也就显得更慢了。 后来我们有了 opcache,使用这个的 ...
分类:
其他好文 时间:
2018-07-14 11:56:36
阅读次数:
284
wget https://openresty.org/download/openresty-1.11.2.2.tar.gz tar -xzvf openresty-1.11.2.2.tar.gz cd openresty-1.11.2.2 查看 nginx 编译选项: root@iZm5eabkgm ...
分类:
其他好文 时间:
2018-07-13 19:06:09
阅读次数:
175
泛型:jit编译的时候指定具体类型,同一个泛型类,不同的类型参数,会生成不同的类型根据以上特性,可以实现泛型缓存。泛型类中,不同的类型参数,其中静态成员也是独立的。实现代码示例:
分类:
其他好文 时间:
2018-07-10 23:43:07
阅读次数:
282