2017-01-29 11 views
0

Кто-нибудь знает причину или логику, почему настройка тайм-аута метода приема OpenSMPP всегда делится на десять? Это основано на моем опыте: когда я устанавливаю его на 5 секунд, таймаут становится 10 секунд, и когда я устанавливаю его на 11 секунд, тайм-аут становится 20 секунд.Время ожидания приема на SMPP

Я попытался найти ответ, углубившись в коды open-smpp-3.0.1, но я не мог найти логику, где 1 секунда становится 10 секунд. Надеюсь, кто-то здесь смог это выяснить раньше.

Btw, мой запрос на привязку является приемником, и мой режим синхронизации синхронный.

ответ

1

Я думаю, что это «Время ожидания ожидания очереди». В кодексе говорится об этом значении:

«Этот тайм-аут определяет, как долго будут идти получающим в засаду, если PDU (ожидаемый или любой) не в pduQueue пока После того, что очередь будет тестироваться снова. (и т. д.) до истечения времени ожидания приема или приема PDU ».

Значение по умолчанию 10 второй, поэтому, если время ожидания составляет от 1 до 10 секунд ждет только очереди в течение 10 секунд, но если определить тайм-аут для приемника 11 секунд он ожидает 2 раза в очереди. Таким образом, приемник ждет 20 секунд. Вы можете изменить это значение, вызвав после связывания этого метода:

sessionSmpp.getReceiver().setQueueWaitTimeout(milliseconds);