< prev index next >
src/java.base/share/classes/sun/nio/ch/NativeObject.java
Print this page
8200131: Improve lazy init of InetAddress.canonicalHostName and NativeObject.pageSize
Reviewed-by: alanb
@@ -386,20 +386,24 @@
unsafe.freeMemory(a);
}
return byteOrder;
}
- // Cache for page size
+ /**
+ * Cache for page size.
+ * Lazily initialized via a data race; safe because ints are atomic.
+ */
private static int pageSize = -1;
/**
* Returns the page size of the underlying hardware.
*
* @return The page size, in bytes
*/
static int pageSize() {
- if (pageSize == -1)
- pageSize = unsafe.pageSize();
- return pageSize;
+ int value = pageSize;
+ if (value == -1)
+ pageSize = value = unsafe.pageSize();
+ return value;
}
}
< prev index next >