-
OO2022第二单元作业总结
OO2022第二单元作业总结 三次作业同步块的设置和锁的选择 三次作业中前两次我主要用到的就是synchronized锁,第三次作业还尝试了ReentrantReadWriteLock读写锁 我加锁的地方主要集中在可能用到的共享变量上,由于我使用了生产者-消费者模式,输入线程输入请求到缓冲队列,调度 -
第二单元博客作业
第二次博客作业 uml图 流程控制 线程配合 主要线程 功能 InputThread 获取输入线程:获取输入的电梯请求和乘客请求,并分别存储到ElevatorRequestList与PersonRequestList中。 ElevatorAddThread 电梯增加线程:提取ElevatorReuq -
#BUAA-面向对象设计与构造 ——第二单元总结#
魔幻电梯月终于结束辣! 第二单元主题 第一次作业: 需求: 给出乘客出发楼座,出发楼层,到达楼座,到达楼层,将该乘客送达至目的地 一共有五台电梯,分别对应五个座ABCDE 每个座的电梯在1-10楼间运行,初始都在楼座的1层 限乘人数:6 人 满足上下行,开关门,乘客进出 保证在电梯系统时间不超过系统 -
BUAA OO BLOG UNIT2
BUAA OO UNIT2 BLOG 摘要: Narrowly escape from Elevator Unit...... 度过愉快的电梯单元,对多线程的设计有了很深的体会。多线程的设计,主要还是聚焦于多线程设计模式的使用、线程安全、轮询(wait-notify机制)几个方面(电梯调度策略像是买 -
BUAA-OO第二单元总结
1、总述 第二单元我们学习了 java 多线程,通过模拟多线程实时电梯系统,掌握了线程之间的交互、多线程中可能存在的线程安全问题以及生产者-消费者、单例模式、观察者模式、流水线模式等多线程协同的设计模式,在三次作业的迭代过程中不断强化线程之间的协同设计层次架构。 2、电梯调度设计 三次作业都 -
「BUAA OO」第二单元总结
「BUAA OO」第二单元总结 零、任务简介 本单元要求建立一个多线程的电梯运行系统,实现对乘客的接送运载(并随时输出电梯运行信息以供评测机检查) 第一次作业,A、B、C、D、E座各有一个纵向电梯,乘客的输入请求被限制在上下行 第二次作业,增加了现实中比较少见的横向电梯(如 10L 的横向电梯可以在 -
BUAA-OO Unit2单元总结
目录 BUAA-OO Unit2单元总结 第一次作业 作业简介 总体架构 同步块和锁 调度器设计 bug分析 作业简介: 模拟单部多线程电梯的运行,多楼座均只有一部电梯。 总体架构: Main类负责所有线程的创建和开启;InputThread线程负责读入数据并将请求放入总等待队列(waitQueue -
BUAA-OO-U2-电梯
一、总论 1.1 直观理解 Unit2 的问题以电梯作为题目背景出题,刚做题的时候很容易就把这个单元的任务当成了处理多线程,当我全部完成这些作业以后,发现仅仅将 U2 概括为多线程,是一个十分片面的直观理解。 我觉得应该这么理解,U2 要完成的东西有(当然可以不完成): 多线程设计:这比原来 -
BUAA-OO-Unit2-Elevator-Summary
BUAA_OO_Unit2总结!没有刻意优化性能的性能分竟意外的还行,乐! -
BUAA_2022_OO_Unit2总结
2022_OO第二单元总结 一、架构分析 1.homework5 简单的生产者消费者模型 UML类图: hw5没有做过多的要求,五个座的电梯都是独立运行,比较简单。一开始我也是按照输入->调度器->电梯进行的架构,但是后来发现调度器实际上就是根据指令的座号分配到相应的队列中,没有起到调度的作用,而且