From 5cb19aadfb763cb92055c52f52ec9bd0734ec270 Mon Sep 17 00:00:00 2001 From: Lin Zhu Date: Mon, 26 Mar 2018 16:51:10 -0400 Subject: [PATCH] =?UTF-8?q?=E7=A6=81=E6=AD=A2=E6=8C=87=E4=BB=A4=E9=87=8D?= =?UTF-8?q?=E6=8E=92?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- notes/Java 并发.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/notes/Java 并发.md b/notes/Java 并发.md index 59813682..bab2be94 100644 --- a/notes/Java 并发.md +++ b/notes/Java 并发.md @@ -436,7 +436,7 @@ synchronized 和 Lock 也能够保证内存可见性。它们能保证同一时 在 Java 内存模型中,允许编译器和处理器对指令进行重排序,重排序过程不会影响到单线程程序的执行,却会影响到多线程并发执行的正确性。 -volatile 关键字通过添加内存屏障的方式来进制指令重排,即重排序时不能把后面的指令放到内存屏障之前。 +volatile 关键字通过添加内存屏障的方式来禁止指令重排,即重排序时不能把后面的指令放到内存屏障之前。 可以通过 synchronized 和 Lock 来保证有序性,它们保证每个时刻只有一个线程执行同步代码,相当于是让线程顺序执行同步代码,自然就保证了有序性。