-
虚拟机centos7系统下安装hadoop ha和yarn ha(详细)
一:基础环境准备 (一):虚拟机新建五个centos7系统(复制文件夹的方式) (二):角色分配 (三)按照角色分配表配置 (1)更改主机ip(自行查找),如果只是个人搭建玩一玩,可选择安装centos7图形界面操作比较简单 (2)更改主机名方法, vim /etc/hostname文件,修改成对应 -
java 注解
举例: 以上定义了一个CollectTask注解,@Target和@Retention称为元注解 一、元注解(meta annotation): 元注解的作用就是负责申明注解的一些属性(比如作用域,作用范围等)。Java5.0定义了4个标准的meta annotation类型: @Target: @ -
Guava Immutable 不可变集合
Immutable是为了创建不可变集合使用,不可变集合在很多情况下能提高系统性能。一般使用 .of() 或者 .builder()().put().build() 初始化创建不可变集合 -
Guava BiMap
BiMap主要的就是用于key,value的互相映射,获取相互的结果,还保证值value是唯一的,key相同覆盖原来值。 举例: -
Guava HashMultiMap(MultiMap)反转映射
(一)MultiMap 多重map,一个key可以对应多个值(多个值放在一个list中), 可用于分组 举例: (二)还可以用于反转映射 -
Guava HashMultiset(MultiSet)
multiset:多重集合,和set唯一的不同是 set 集合中一个值只能出现一次,而multiset多重集合中一个值可以出现多次。 一个典型的应用就是统计单词出现次数 举例: 结果: -
java Exchanger
Exchanger 用于两个线程之间交换数据,举例; 执行结果: 大概意思就是一个线程交换的数字是从1 10,而另一个线程则每次交换的数据都是0,可以看出这个exchanger.exchange(data);方法是一个阻塞方法,当一个线程等待交换时,一定会等到另一个线程也执行exchanger.ex -
java CyclicBarrier以及和CountDownLatch的区别
CyclicBarrier 的字面意思是可循环使用(Cyclic)的屏障(Barrier)。让一组线程到达一个屏障(也可以叫同步点)时被阻塞,直到最后一个线程到达屏障时,屏障才会开门,所有被屏障拦截的线程才会继续干活。CyclicBarrier默认的构造方法是CyclicBarrier(int pa -
java CountDownLatch的使用
CountDownLatch能够使一个线程在等待另外一些线程完成各自工作之后,再继续执行。使用一个计数器进行实现。计数器初始值为线程的数量。当每一个线程完成自己任务后,计数器的值就会减一。当计数器的值为0时,表示所有的线程都已经完成了任务,然后在CountDownLatch上等待的线程就可以恢复执行 -
java Concurrent 中的数据结构
一:阻塞数据结构(线程安全) 二:并发数据结构(线程安全)