JUC
student__software
这个作者很懒,什么都没留下…
展开
-
Lock8锁
前言:Lock 替代了 synchronizedCondition 替代了 Object中的wait 和notify 方法为什么Lock会替代synchroized? synchronized的局限性占有锁的线程等待IO或者其他原因被阻塞,没有释放锁的情况下,其他线程一直阻塞 多个线程同时读写文件的时候,读和读操作也会发生冲突 我们没有办法知道当前...原创 2018-08-27 19:35:06 · 729 阅读 · 1 评论 -
JUC之线程通知
上一次说道,线程操作记住:线程 操作 资源类,高内聚低耦合,这是上下(wait和notify)口诀: 判断/干活/通知 ,虚假唤醒一、案例 1(两个线程) 现在两个线程,可以操作初始值为零的一个变量,实现一个线程对该变量加1,一个线程对该变量减1,交替,来10轮。资源类:可以结合判断 干活 通知,注意是if判断只判断一次,后面会讲到class ShareData{...原创 2018-08-21 21:00:34 · 264 阅读 · 0 评论 -
JUC之线程抢占资源
创建线程重要!!!1、怎么做多线程题?口诀:线程 操作 资源类 ,高内聚低耦合(指的是操作)不管会不会,先创建资源类,在资源类里封装对资源的操作,然后在创建多个线程,在操作这个资源类2、多线程操作时候,就会产生线程安全问题,比如,之前提过的 i++ 就是线程不安全,JUC提供了安全解决措施,在 java.util.concurrent.locks包下,怎么做到线程安全,就是尽量做到原...原创 2018-08-21 20:17:54 · 571 阅读 · 0 评论 -
JUC之集合
常见的有哪些是线程不安全的?1、集合类是不安全的:ArrayList,HashSet,HashMap等等都是不安全2、i++, ++i 也是不安全JUC什么?1、juc是java.util.concurrent包的简称,在此包中增加了在并发编程中很常用的实用工具类,用于定义类似于线程的自定义子系统,包括线程池、异步IO 和轻量级任务框架。提供可调的、灵活的线程池。还提供了设计用于多...原创 2018-08-21 19:42:24 · 734 阅读 · 0 评论 -
Lombok的安装和使用
Lombok使用介绍在项目中使用Lombok可以减少很多重复代码的书写。比如说getter/setter/toString等方法的编写。主要是他可以动态的生成get,set等等方法,在企业中是非常实用的,修改属性时,不用在去修改get,set方法,tostring方法等IDEA中的安装打开IDEA的Setting –> 选择Plugins选项 –> 选择Browse...原创 2018-08-21 19:03:46 · 436 阅读 · 0 评论 -
Linux大数据重要命令
真正的大数据工程师,linux命令是横着写很长,不是一句一句执行的,尤其是大数据工程师需要检测cpu,内存,网络IO等各种开销,就需要掌握各种命令,命令主要分为这几种,一是查看各种进程的相关信息,其中包括cpu或者内存等从高到底,或者是前十等等。二是排查故障,结合linux和java的各种命令快速定位到问题出现的关键地方。三是排除系统长时间使用过慢原因等。首先需要明确的是,要学会各种linux...原创 2018-08-27 19:36:10 · 1882 阅读 · 1 评论 -
JVM入门及调优
jvm是在操作系统之上的,他与硬件没有直接的交互。一、JVM体系结构(非常重要)其中:1、ClassLoder类加载器相当于快递员,只负责传输,而真正执行的是后面的额执行引擎2、Jvm调优只能调亮的地方也就是方法区和堆,灰色的部分不能调优灰色的都是私有的,不存在垃圾回收和调优二、类加载器(重点是加载器的双亲委派机制和沙箱机制)负责加载class文件,但是怎么识别是不是c...原创 2018-08-29 19:11:16 · 468 阅读 · 0 评论