diff options
Diffstat (limited to 'usage_examples/GetterLazyExample_post.jpage')
-rw-r--r-- | usage_examples/GetterLazyExample_post.jpage | 26 |
1 files changed, 0 insertions, 26 deletions
diff --git a/usage_examples/GetterLazyExample_post.jpage b/usage_examples/GetterLazyExample_post.jpage deleted file mode 100644 index 5f34c43e..00000000 --- a/usage_examples/GetterLazyExample_post.jpage +++ /dev/null @@ -1,26 +0,0 @@ -public class GetterLazyExample { - private final java.util.concurrent.AtomicReference<java.lang.Object> cached = new java.util.concurrent.AtomicReference<java.lang.Object>(); - - public double[] getCached() { - java.lang.Object value = this.cached.get(); - if (value == null) { - synchronized(this.cached) { - value = this.cached.get(); - if (value == null) { - final double[] actualValue = expensive(); - value = actualValue == null ? this.cached : actualValue; - this.cached.set(value); - } - } - } - return (double[])(value == this.cached ? null : value); - } - - private double[] expensive() { - double[] result = new double[1000000]; - for (int i = 0; i < result.length; i++) { - result[i] = Math.asin(i); - } - return result; - } -} |