Java笔记之谈谈java这个平台的一部分内容

Java运行机制  源代码----》javaC编译成字节码----》JVM解释成0101的机器码

JAVA运行两种模式  Server模式与client模式启动。最主要的差别在于:-Server模式启动时,速度较慢,但是一旦运行起来后,性能将会有很大的提升。JVM工作在Server模式下可以大大提高性能,Server模式下应用的启动速度会比client模式慢大概10%,但运行速度比Client VM要快至少有10倍。

我们可以通过运行:java -version来查看jvm默认工作在什么模式。

当不指定运行模式参数时,虚拟机启动检测主机是否为服务器,如果是,则以Server模式启动,否则以client模式启动,J2SE5.0检测的根据是至少2个CPU和最低2GB内存(我买的腾讯云服务器是单核CPU 也是Server模式),估计应该是64位的机器上装的64位的jdk才是Server模式 32位的默认是Client模式 可以更改为Server模式。

由于服务器的CPU、内存和硬盘都比客户端机器强大,所以程序部署后,都应该以server模式启动,获取较好的性能;
JVM在client模式默认-Xms是1M,-Xmx是64M;JVM在Server模式默认-Xms是128M,-Xmx是1024M;
server:启动慢,编译更完全,编译器是自适应编译器,效率高,针对服务端应用优化,在服务器环境中最大化程序执行速度而设计。
client:快速启动,内存占用少,编译快,针对桌面应用程序优化,为在客户端环境中减少启动时间而优化;

当JVM用于启动GUI界面的交互应用时适合于使用client模式,当JVM用于运行服务器后台程序时建议用Server模式。

 

面向JIT编程-方法内联

JIT的全称是Just in time compilation,中文称之为即时编译。JIT是JVM最强大的武器之一,在运行时可以让java从屌丝到高富帅的飞跃,强大到在google上搜索为什么java比c++快居然会有200W的结果。

直接贴上简书地址吧 写的很好https://www.jianshu.com/p/169d6a50284a

做个总结:

方法内联就是把本来调用方法的那段代码直接拿到调用方里面执行,这样做有什么好处呢,方法调用需要开销的,不存在方法调用,直接在自己的方法里面执行别的方法代码当然能提高性能了。

一段代码频繁调用后就会变成热点代码,会触发JIT的方法内联。



 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值