首页 > 解决方案 > 在通道的 processMessage 方法上添加队列模型

问题描述

我正在尝试在 processMessage 方法的通道上添加队列模型(M/D/1),但是队列模型中的问题是我必须发送 cchaneel 类不支持的自我消息?那么我怎样才能让 processMessage 像 cSimpleModule 类一样工作(它允许向它自己发送 selfmessage?

标签: queuemessage-queueomnet++inet

解决方案


您不应该在通道内排队消息,就像在现实世界中一样,数据包在传输过程中不会在以太网电缆上排队。相反,发送节点的网络接口知道传输何时完成,并且网络接口本身将额外的消息排队,直到线路空闲。所以队列应该在网络接口卡(这是一个模块)中。请参阅执行此操作的路由示例:

https://github.com/omnetpp/omnetpp/blob/master/samples/routing/node/L2Queue.cc


推荐阅读