Skip to content

Latest commit

 

History

History
10 lines (8 loc) · 522 Bytes

02 安全发布对象.md

File metadata and controls

10 lines (8 loc) · 522 Bytes

安全发布对象

发布对象:使一个对象能够被当前范围之外的代码所使用。

对象溢出:一种错误的发布。当一个对象还没构造完成时,就使它被其他线程所见。

安全的发布对象的方法

  • 在静态初始化函数中初始化一个对象引用
  • 将对象的引用保存到 volatile 类型域或者 AtoReference 对象中
  • 将对象的引用保存到某个正确构造对象的final类型域中
  • 将对象的引用保存到一个由锁保存的域中