- 博客(4)
- 资源 (4)
- 问答 (1)
- 收藏
- 关注
原创 synchronized与volatile的区别
1)关键字volatile是线程同步的轻量级实现,所以volatile性能肯定比synchronized要好,并且volatile只能修饰于变量,而synchronized可以修饰方法以及代码块,随着JDK新版本的发布,synchronized关键字在执行效率上得到很大提升,在开发中使用synchronized关键字的比率还是比较大的。2)多线程访问volatile不会发生阻塞,而synchr
2017-04-20 18:12:02 388
转载 JAVA中堆与栈的区别
简单的说: Java把内存划分成两种:一种是栈内存,一种是堆内存。在函数中定义的一些基本类型的变量和对象的引用变量都在函数的栈内存中分配。 当在一段代码块定义一个变量时,Java就在栈中为这个变量分配内存空间,当超过变量的作用域后,Java会自动释放掉为该变量所分配的内存空间,该内存空间可以立即被另作他用。 堆内存用来存放由new创建的对象和数组。 在堆中分配的内存
2017-04-20 16:29:11 290
原创 非线程安全问题
非线程安全主要是指多个线程对同一个对象中的同一个实例变量进行操作时会出现值被更改、值不同步的情况,进而影响程序的执行流程。比如两个账号同时登陆的情况:例子说明:一个非线程安全环境:package com.zxc.thread.test;public class LoginTest { private static String usernameRef; private st
2017-04-11 11:05:53 550
原创 用例子介绍mybatis的缓存机制
在实际的项目开发中,通常对数据库的查询性能要求很高,而mybatis提供了查询缓存来缓存数据,从而达到提高查询性能的要求。mybatis的查询缓存分为一级缓存和二级缓存,一级缓存是SqlSession级别的缓存,二级缓存时mapper级别的缓存,二级缓存是多个SqlSession共享的。mybatis通过缓存机制减轻数据压力,提高数据库性能。一级缓存:mybatis的一级缓存是SQLS
2017-04-01 18:51:22 14399 9
EasyUI页面直接访问中文乱码,已试该试的,求大神拉一把?
2017-07-14
TA创建的收藏夹 TA关注的收藏夹
TA关注的人