在SMPP上接收超时

时间:2017-01-29 01:38:04

标签: opensmpp

有谁知道为什么OpenSMPP接收方法的超时设置总是可以被10整除的原因或逻辑?这是基于我的经验:当我将其设置为5秒时,超时变为10秒,当我将其设置为11秒时,超时变为20秒。

我试图通过深入研究open-smpp-3.0.1的代码来寻找答案,但我找不到1秒钟变为10秒的逻辑。我希望此处有人能够弄清楚这个。

顺便说一下,我的绑定请求是一个Receiver,我的同步模式是同步的。

1 个答案:

答案 0 :(得分:1)

我认为是#34;队列等待超时"。在代码中说明了这个值:

  

"此超时指定如果PDU(预期或任何)尚未在pduQueue中等待接收等待多长时间。之后,再次探测队列(等等),直到接收超时到期或接收到PDU"。

默认值为10秒,因此,如果超时为1到10秒,则仅等待队列10秒,但如果为接收器定义超时11秒,则等待队列2次。这样接收器等待20秒。您可以在bindind此方法之后修改此值:

sessionSmpp.getReceiver().setQueueWaitTimeout(milliseconds);