我正在使用Inet框架,我想在模拟过程中动态创建多个无线主机。为此我使用了LaptopModelManager类,但是当我到达这一行时:在LaptopModelManager :: newNode方法中的mod-> callInitialize()我遇到了分段错误:
主题1" myNets"收到信号SIGSEGV,分段故障。 inet中的0x00007ffff74358d7 :: visualizer :: MobilityCanvasVisualizer :: receiveSignal(这= 0x34f2540,源= 0x7240fe0,信号= 95,对象= 0x7240fe0,详细信息= 0x0)在inet / visualizer / mobility / MobilityCanvasVisualizer.cc:126 126 entry-> visualization-> setTransform(cFigure :: Transform()。translate(position.x,position.y));
以下是我在ini文件中的内容:
**.laptopModelManager.NumNodes = 3
**.laptopModelManager.startLife = uniform(2s,3s)
**.laptopModelManager.endLife = uniform(6s,8s)
**.laptopModelManager.nodeType = "inet.node.inet.WirelessHost"
**.laptopModelManager.nodeName = "cliHostGuest"
在我的文件中,我添加了@dynamic:
的节点cliHostGuest[n]: WirelessHost {
parameters:
@dynamic;
@display("p=444,178");
//mobilityType = "LinearMobility";
}
有什么问题?我真的很感激任何帮助,我尝试了很多东西,但却无法摆脱这个错误。
非常感谢
答案 0 :(得分:0)
@RensvanderHeijden感谢您的回复。
以下是创建新节点的代码部分:
test
在这里你可以找到整个班级:
如果我没有调用最后一行(mod-> callInitialize()),该节点将可视化但不做任何其他操作。当我执行callInitialize()时,会发生此错误。
您的回答似乎对我而言,但仍然不明白如何解决它。