EventBus/src/org/greenrobot/eventbus/EventBus.java
void invokeSubscriber(PendingPost pendingPost) {
        Object event = pendingPost.event;
        Subscription subscription = pendingPost.subscription;
        PendingPost.releasePendingPost(pendingPost);
        if (subscription.active) {
            invokeSubscriber(subscription, event);
        }
    }
void invokeSubscriber(PendingPost pendingPost) {
        Object event = pendingPost.event;
        Subscription subscription = pendingPost.subscription;
        PendingPost.releasePendingPost(pendingPost);
        if (subscription.active) {
            invokeSubscriber(subscription, event);
        }
    }
Invokes the subscriber if the subscriptions is still active. Skipping subscriptions prevents race conditions
between {@link #unregister(Object)} and event delivery. Otherwise the event might be delivered after the
subscriber unregistered. This is particularly important for main thread delivery and registrations bound to the
live cycle of an Activity or Fragment.