【发布时间】:2020-12-21 14:31:46
【问题描述】:
在我的 OMNeT++ 5.5.1 网络中,我有两个节点(node[0] 和 node[1]),它们使用以下代码设置计时器。 node[0] 和 node[1] 设置的定时器大部分时间都会被触发,但是有一段时间,node[0] 设置的定时器应该被触发,但它没有被触发。我确保 node[1] 没有与 node[0] 同时设置计时器,但计时器仍然没有触发。
代码如下:
MyWaitTimerMessage *myTimer = new MyWaitTimerMessage();
myTimer->setNodeId(myId);
double interval = 40.0 // In actual, the interval is calculating based on some criteria
scheduleAt(simTime() + interval, myTimer);
有谁知道它背后的问题是什么?以及哪些因素会导致定时器不触发?
另外,有没有办法在 OMNeT++ 中列出所有计划的计时器,以便我可以检查它是否存在于计时器的全局列表中?
此外,计时器之间是否可能发生冲突(实际上我已经确保所有计时器都安排在不同的时间,至少有几毫秒的差异)。
提前谢谢你。 亚西尔
【问题讨论】: