diff --git a/src/main/java/rx/Observable.java b/src/main/java/rx/Observable.java index c576ea59f9..ed665b0345 100644 --- a/src/main/java/rx/Observable.java +++ b/src/main/java/rx/Observable.java @@ -1029,13 +1029,15 @@ public final static Observable defer(Func0> observableFacto return create(new OnSubscribeDefer(observableFactory)); } - /** An empty observable which just emits onCompleted to any subscriber. */ - private static final Observable EMPTY = create(new OnSubscribe() { - @Override - public void call(Subscriber t1) { - t1.onCompleted(); - } - }); + /** Lazy initialized Holder for an empty observable which just emits onCompleted to any subscriber. */ + private static final class EmptyHolder { + final static Observable INSTANCE = create(new OnSubscribe() { + @Override + public void call(Subscriber subscriber) { + subscriber.onCompleted(); + } + }); + } /** * Returns an Observable that emits no items to the {@link Observer} and immediately invokes its @@ -1055,7 +1057,7 @@ public void call(Subscriber t1) { */ @SuppressWarnings("unchecked") public final static Observable empty() { - return (Observable)EMPTY; + return (Observable) EmptyHolder.INSTANCE; } /**