我想根据仿真时间更改仿真中实体的数量。我找到了这个解决方案(在这里找到:How to change a parameter value over time?):
Network.numberOfEntities = simTime() < 30s ? 50 : 250
我使用此参数来初始化ned文件中的子模块,如下所示:
submodules:
entities[numberOfEntities]: Entity;
但是,这在这里不起作用,数字不变。知道如何在运行时更改网络实体的数量吗?我能想到的唯一选择是创建250个实体,仅在开始时使50个实体处于活动状态,并随着时间的推移通过参数对其进行更改,而不是创建新实体。
答案 0 :(得分:1)
更改numberOfEntities
不会影响网络中entities
的数量,因为在仿真开始时(即t = 0时)仅 创建了子模块。 br />
但是,在OMNeT++
API中,可以随时删除和创建模块-请查看Simulation Manual, 4.13 Dynamic Module Creation。