Какая польза от 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()
что просходит? (Должно провалиться)
Или объяснение @ Дипак может быть действительным тоже