jvm之4对象创建 对象创建流程 虚拟机遇到一条new指令时,首先检查这个对应的类能否在常量池中定位到一个类的符号引用 判断这个类是否已被加载、解析和初始化 为这个新生对象在Java堆中分配内存空间,其中Java堆分配内存空间的方式主要有以下两种 指针碰撞 分配内存空间包括开辟一块内存和移动指针两个步骤 非原子步骤可能出现并发问题,Java虚拟机采用CAS配上失败重试的方式保证更新操作的原子性 空闲列表 分 2019-07-23 jvm #jvm
jvm之5垃圾回收 参考https://www.cnblogs.com/czwbig/p/11127124.html JVM JMM https://zhuanlan.zhihu.com/p/402225242 http://blog.csdn.net/java2000_wl/article/details/8042010 jvm参数 http://www.oracle.com/technetwork/java 2019-07-23 jvm #jvm
计算java对象所占内存大小 转载自:https://bbs.huaweicloud.com/blogs/345655?utm_source=cnblog&utm_medium=bbs-ex&utm_campaign=other&utm_content=content 计算java对象所占内存大小1.使用jdk8自带API使用这种jdk8方式时,Open JDK 不是天然支持的,需要set一下环境变量 2019-07-23 jvm #jvm
hexo使用图片 1.直接使用,参见markdown使用图片2.使用hexo-asset-image插件1npm install https://github.com/CodeFalling/hexo-asset-image 修改_config.yml中post_asset_folder 字段为true 2.1修改源码1node_modules` --> `hexo-asset-image` --> 2019-07-23 node #hexo
markdown文件使用图片 1.markdown添加图片的基础格式1 Alt text:图片的Alt标签,用来描述图片的关键词,可以不写。最初的本意是当图片因为某种原因不能被显示时而出现的替代文字,后来又被用于SEO,可以方便搜索引擎根据Alt text里面的关键词搜索到图片。 图片链接:可以是图片的本地地址或者是网址。 “optio 2019-07-23 其他工具 #markdown
程序员穿衣 着装第一要义:合身上身:四层理论一个简单的方法告诉你不同季节该穿几件衣服: 夏天穿一层,春天穿两层,秋天穿三层,冬天穿四层。 也就是说: 一件衬衫/T恤=夏天 T恤+衬衫/夹克=春天 T恤+衬衫+夹克/毛衣=秋天 T恤+衬衫+毛衣+夹克=冬天 1、纯色T恤 2、衬衫:不买格子衬衫。合身最重要。白色永远百搭,浅蓝看着舒服,牛仔十分 2019-07-23 生活 #生活
遇到过的问题 mysql jdbc版本已知问题在mysql jdbc 使版本号为 6.0.6时,使用text/longtext字段时,会报错,那个错误跟类型错误是一个错误信息,所以很难排查,去官网搜索,在官方文档MySQL Connector/J 对应版本中搜索 Known Issues and Limitations (已知错误和局限性)里发现,6.0.6版本就会出这个问题。这时候我明白 2019-07-23 遇到过的问题 #遇到过的问题
shiro入门理解 1.shiro架构简介查找进入shiro官网http://shiro.apache.org/ 点击 Get Started 点击Architecture 2.什么是Apache ShiroApache Shiro是一个功能强大且灵活的开源安全框架,可以清晰地处理身份验证,授权,企业会话管理和加密。 Apache Shiro的首要目标是易于使用和理解。安全有时可能非常复杂,甚至是痛苦的,但事实并非如 2019-07-23 权限框架 #shiro
CAS compare and swap 1.whatcompare and swap从内存上取值V,和预期值A进行比较,如果内存值V和预期值A的结果相等,那么我们就把新值B更新到内存,如果不相等,那么就重复上述操作直到成功为止。cas 硬件指令 (引申MutexLock) 2.why多线程共享资源,并发修改,保证正确 3.how在原子类变量中,如java.util.concurrent.atomic中的AtomicXXX,都有大量的使用 2019-07-18 java #CAS
String与StringBuffer与StringBuilder的区别 String与StringBuffer与StringBuilder的区别1.可变性 String内部的value值是final修饰的,所以它是一个不可变的类,每一次修改String的值的时候,都会产生一个新的对象。 StringBuffer和StringBuilder是一个可变类,字符串的变更不会产生新的对象。 2.线程安全性 String是一个不可变的类,是线程安全的。 StringBuffer 2019-07-18 java #java