301
社区成员
发帖
与我相关
我的任务
分享第二单元三次作业实在是太难了,我一次有效作业也没有,但还是试着写一些我的感想吧
楼座内有6部电梯,接收指定乘客请求,在1-11层之间合理调度,将其送到目的地。电梯需要实时反馈时间戳。
我把调度策略弄明白了,但代码没能完成。电梯调度采用采用LOOK策略,具体策略如下:
判断乘客列表和侯乘队列是否为空。
判断侯乘队列是否结束。
设置电梯运行方向。
判断是否有乘客要进来。
运行一层。
但由于侯乘序列代码化的一些bug,导致最后作业无效。
第六次作业我也有尝试去写,有一些思考,但遇到了更多的问题
我准备采用随机策略,最原始的生产者-消费者物竞天择模型,随机生成电梯序号来为乘客选择搭乘电梯,当大批乘客迅速到来时,随机分配时可能会拥有更好的性能,但为乘客请求数较少时,随即策略可能会导致一台电梯频繁工作。这样显然不是最优策略,但这是我想到的最简单策略,可惜也没能实现
第二单元的线程学习经历让我从一个完全不了解线程概念的状态逐渐理解了线程的本质和相关的概念,如synchronized、notif等。虽然没能最终完成作业,但对于线程的学习还是大大提高我面向对象的能力,无论如何,我要在下一次作业中极限努力,争取完成下一单元的作业。