-
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没有做过多的要求,五个座的电梯都是独立运行,比较简单。一开始我也是按照输入->调度器->电梯进行的架构,但是后来发现调度器实际上就是根据指令的座号分配到相应的队列中,没有起到调度的作用,而且 -
面向对象第二单元总结
面向对象第二单元总结 第二单元的作业是电梯调度,模拟有五个座的大楼中的电梯调度情况。与上一单元相同,本单元三次作业为迭代开发,在第五次作业中实现每座一部电梯的调度;在第六次作业增加横向电梯,并实现电梯数量的动态调整;在第七次作业中设置电梯的容量、速度、停靠位置等参数,并实现换乘的功能。 第五次作业 -
OO第二单元总结
OO第二单元总结 -
OO第二单元总结
OO第二单元总结 同步块与锁 在第一次作业的第一个版本中,由于最开始思路不清晰,我给一个电梯开了3个线程,分别是计算线程、电梯运行线程和乘客上下线程,三个线程之间需要相互通信,共享数据杂糅导致我第一个版本的电梯对4,5个共享对象分别加了锁,形成了很多层锁的嵌套。而为了解决死锁的问题,我希望每个syn