在:
https://docs.omnetpp.org/tutorials/tictoc/part5/
和
https://doc.omnetpp.org/omnetpp/manual/#sec:simple-modules:declaring-statistics
演示了如何在模拟之后处理网络统计数据。
是否可以动态获取网络参数?
发布于 2020-12-08 14:54:32
TL;DR:使用信号(而不是统计数据)并将您自己的简单模块连接到这些信号上,并在该模块中计算所需的统计信息。
您不能访问代码中的@statistics值,这是有原因的,因为这将是一个反模式。基于NED的统计信息是一种向模型添加计算和度量的方法,而不需要修改模型、行为和代码。这意味着统计数据不是模型的一部分,而是被视为配置的一部分。更改统计数据(即决定要测量其他内容)不应该改变模型的行为。这就是为什么给定统计信息的实际值不公开(很容易)到C++代码中的原因。你可以把他们挖出来,但这是非常气馁的。
现在,这并不意味着您想要实现的目标是不合法的,但是实际的统计数据收集必须是您的模型的一个组成部分。也就是说,您不应该以使用内置统计信息为目标,而应该创建一个显式统计信息收集子模块,该子模块应该连接到必要的信号(https://doc.omnetpp.org/omnetpp/manual/#sec:simple-modules:subscribing-to-signals)上,并在其C++代码中执行所需的实际统计计算。在此之后,其他模块可以自由地访问这些信息并在此基础上做出决策。
https://stackoverflow.com/questions/65150496
复制相似问题