java笔记
IMBA_JAVA
这个作者很懒,什么都没留下…
展开
-
eclipse 用maven创建javaWeb项目
一、环境说明 1、eclipse 版本Version: Mars Release (4.5.0)(能支持maven3版本就行) 2、maven版本apache-maven-3.3.3 3、jdk版本 1.8(1.6及以上版本即可) 二、javaWeb项目搭建 1、创建maven project 2、添加web.xml原创 2016-07-17 11:32:02 · 481 阅读 · 0 评论 -
java线程安全与锁优化(一)
最近从关注的公众号Hollis(很不错的阿里大神的公众号)看到一篇关于java面试的文章,主要围绕线程安全与锁展开,随即学习了下,在此记录一下,仅供学习。一、由StringBuilder与StringBuffer的区别引出线程安全问题对于StringBuilder与StringBuffer的区别相信大家都能快速回答,StringBuilder是线程不安全的 StringBuffer是线程安...原创 2019-08-14 18:17:37 · 141 阅读 · 0 评论 -
java线程安全与锁优化(二)
上一篇文章中我们从StringBuilder与StringBuffer的区别开始引申出线程安全相关的概念与对线程安全的“安全强度”进行说明与测试。本篇文章我们将继续对java线程安全与锁优化进行学习。(不足或有错误之处,欢迎指正)三、如何保证线程安全 回顾:前文中对线程安全 通过“安全强度”将其分为了 不可变、绝对线程安全、相对线程安全、线程兼容、线程对立5类。其中不可变对象在构建过...原创 2019-08-16 11:02:23 · 184 阅读 · 0 评论 -
java线程安全与锁优化(三)
回顾:在前两篇文章中主要都是记录了线程安全相关概念与如何实现线程安全。在实现线程安全的过程中有一个反复提及的名词——锁,通过对一个对象或一个程序块、方法加锁让其在同一时间只能被一个线程操作从而达到线程安全。加锁虽然解决了数据共享和竞争的问题但也带来了很多其他问题:线程阻塞、死锁、程序执行效率低下等等。为了在线程之间更高效的共享数据、解决竞争从而提高程序执行效率,JVM对锁做了许多的优化。问题:...原创 2019-08-22 11:17:55 · 160 阅读 · 0 评论