zl程序教程

您现在的位置是:首页 >  Java

当前栏目

保持java线程间可见性的5种方式

2023-03-14 10:19:24 时间
Primitive Writes up to and including… ...are made visible to…
Object the end of a synchronized block or method a thread entering a synchronized block or method for the same object.
Volatile field a write to a volatile field any thread reading that volatile field.
Thread a call to Thread.start the newly started thread.
Thread the final write made by a dying thread any thread which successfully calls Thread.join on that thread.
Final field the initialization of a final field (but only those writes affecting the field and any object it references) any thread, provided that the constructor of the object containing the field doesn’t write the value of this anywhere eventually visible to other threads



  这些在《java并发编程实践》一书中已经有详细解释,特别是对于ReentrantLock、volatile域以及final域的讨论。今天在MenTaLguY的blog上看到这张表,摘录下

文章转自庄周梦蝶  ,原文发布时间2008-02-23