- 博客(4)
- 资源 (1)
- 收藏
- 关注
原创 线程通信机制
一 java实现线程通信机制主要通过以下几种方式 1 while()轮询 2 等待/通知机制 wait()、notify()、notifyAll()结合synchronized关键字 3 条件对象:Condition Condition和ReentrantLock重入锁 此外,java为线程间通信还提供了一些关键字:synchronized、volatile、final,...
2018-09-24 16:23:47 1645
原创 Linux磁盘挂载
1 查看有哪些磁盘? fdisk -l|grep sd 2 添加分区 新建分区输入:n(我这里只需要一个分区,所以默认就可以): 输入t选择id修改分区系统类型,输入p查看分区类型 3 输入 w 完成保存 4 查看是否有分区了 5 建好分区后要格式化分区,建立文件系统 6 这样文件系统就创建好了,下面选择一个挂载点完...
2018-09-12 17:45:47 348
转载 java内存模型之volatile变量
一 volatile关键字的作用 1 保证任意单个变量读/写的原子性,即使是64位的long/double变量,也能保证其读/写具备原子性,但是在类似vlolatile变量的复合操作上,volatile关键字将不具备原子性 2 保证变量的可见性,即对一个变量的读,总能看到其他任意线程对该vlolatile变量的最后写入 二 volatile关键字的内存语义 1 读的内存...
2018-09-11 19:44:10 126
原创 Java内存模型
首先我们先谈谈什么是数据竞争, 数据竞争的定义: 1 在一个线程正在写一个变量 2 在一个线程中正在读一个变量 3 变量的写和读没有通过同步来进行排序 当程序中存在数据竞争的时候,往往会产生违背直觉的一些结果,在一个多线程程序中,如果进行了正确的同步,那么这将是一个没有数据竞争的程序。 JMM对于正确同步的多线程程序做了内存一致性的保证: 如果一个多线程程序是正确同步的,那么程序...
2018-09-06 10:17:23 102
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人