Какая польза от ApnsService.start в notnoop java-apns? Я могу нажать MSG с методом push без запуска ()

                  sv = APNS.newService()
            .withCert("./dev.p12", "pwd") 
            .withSandboxDestination()
            .build();   

Я просто использую sv.push(токен, полезная нагрузка) без sv.start(), кажется, что он работал хорошо. Так что толку от start () и stop()? Должен ли я добавить их в свой код?

2 ответа

Решение

Вы не запрашивали неблокирующую / помещаемую в очередь или объединенную в пул службу APNS, поэтому Impl по умолчанию, возвращаемый сборщиком: ApnsServiceImpl чья start() метод ничего не делает

    public void start() {
}

Другие Имплс как MinaAdaptor есть код инициализации на start(),

public void start() {
    cf = connector.connect(new InetSocketAddress(host, port));
    cf.awaitUninterruptibly();
}

Из Javadocs:

void start (): запускает службу. Базовая реализация может подготовить свои соединения или структуры данных, чтобы иметь возможность отправлять сообщения. Этот метод является блокирующим вызовом, даже если служба представляет собой неблокирующую push-службу. Как только служба возвращается, она готова принимать push-запросы.

В вашем случае кажется, что служба уже запущена. Пытаться sv.stop() затем sv.push() что просходит? (Должно провалиться)

Или объяснение @ Дипак может быть действительным тоже

Другие вопросы по тегам