cloudsim中startSimulation,学习cloudsim是如何进行模拟的

cloudsim通过调用startSimulation ,紧接着startSimulation调用run() 开始真正的模拟。而核心代码全部位于run当中,一下分析run的实现步骤:

Run()的步骤:

1 runStart开启所有模拟实体,对所有加入到模拟实验当中的实体,调用startEntity(),这个函数不同的实体继承自simEntity,会有不同的实现,例如数据中心是将自己的ID发给CloudInfoServiceEntity ,进行注册。

2 runClockTick()  ,这是这个方法中一个很重要的方法。对所有RUNNABLE可运行的实体,进行实体的run();对每个实体的模拟事件,从deferred延迟队列中选择一个事件进行处理,需要按照指定选择策略。 然后再检查查如果未来future队列不为空,中选择未来队列中的事件进行处理。 返回队列是否为空的boolean标志。

3 检查terminateAt,pauseAt 的时间信息,判断是否进入到终止或者暂停状态,暂停状态的线程中,每次睡眠0,1s

4  停止模拟 



评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值