-
OO - 第二单元总结
OO第二单元总结 第一次作业总结 分析 在本单元我们的任务为设计并实现一个多线程电梯,并且构造策略实现接送乘客于出发地和目的地 本单元为多线程的应用,对每一个有可能线程不安全的变量或者方法,都要通过加锁构造为 线程安全 使用 生产者-消费者 模式,与 乘客-电梯 相对应 使用 策略类—电梯类 分离模 -
OO 第二单元总结
第一次作业设计 代码架构 |- InputHandler 输入类,线程 |- Elevator 电梯类,线程 |- Request 单个请求 |- RequestQueue 等待队列,为Elevator与InputHandler的公有对象 |- OutputHandler 输出类 |- MainCl -
OO_Unit2_Summary
心得体会 金钻以为他在学校或在给学生补习时,他正搭乘金属玻璃电梯直穿摩天建筑直达城市上空,脚下人间哆嗦的灯芒将明将灭,是他灵魂的夜景。事后降落回街上,人是个从母体脱落的空壳,从极高极高坠到了绝低绝低,走在茫茫人海里他是侥幸逃生的人。 丨钟晓阳《遗恨》 照例,我喜欢把心得体会写在一开头,让后来的读者先 -
OO第二单元总结博客
第五次作业 1.1 思路分析 第五次作业实现了五个楼座每个楼座单个电梯,以基本的消费者生产者模型为思路,一个输入类作为生产者线程,五个楼座的总共五个单部电梯作为五个消费者。构建自己的一个存放请求的线程安全队列,每个楼座对应一个队列,生产者线程将输入判断后添加到对应的队列中,电梯作为消费者从对应队列中 -
Java多线程程序设计总结——电梯
第一章 基本架构 第一次作业架构 二话不说,先上架构。 总体设计 总的来看,我的作业架构主要包括输入类(InputHandler),总调度器(Simulator),电梯类(Elevator),乘客类(Passenger),输出类(OutputHandler)。输入类不断将请求打包为乘客类后放入总调度 -
面向对象第二单元总结
面向对象第二章总结 1. 作业中的同步操作 第二章主题是多线程设计,因此作业的训练主要也是围绕多线程并发问题。我在这三次作业中使用的同步方法有synchronized, lock和readwritelock。 第一次作业中,由于需求简单,各个电梯任务独立,因此涉及的对象贡献资源只有每个电梯自己的候乘 -
OO第二单元总结
OO第二单元总结 一、同步块的设置和锁的选择 1.1锁与同步块中处理语句之间的关系 **需要设置同步块和锁的原因是:**多个线程访问/操作同一共享对象,需要锁来保证一个线程对该共享对象的访问/操作不会被其他线程打断。 锁与同步块中处理语句之间的关系:锁将它锁住的语句快(被锁住的这一块语句也称为同步块 -
BUAA OO 第二单元总结
#:artificial_satellite:BUAA OO 第二单元总结 ✍第五次作业 🏠程序架构 (UML类图中省略了一些不重要的getter&setter方法和构造方法,下同) ####💬重要类描述 + 调度器设计 😶RequestQueue: 第一次作业对于Request的处理比较 -
OO 第二单元总结
一、总述 在本单元中我们主要学习的是多线程的调度,了解并熟悉如何实现线程安全的问题,通过对电梯调度的三次迭代开发进一步了解多线程的使用 UML类图如下: UML协作图如下: 二、作业分析 1. 第五次作业 (1)作业要求 第五次作业主要要求的的是五栋楼各有一部电梯,电梯直接互不干扰,仅共用一个总输入 -
BUAA_OO_2022 第二单元总结
OO 第二单元 电梯 总结 目录 一、三次作业分析 二、bug分析 三、心得体会 在第一部分将结合三次作业的uml类图,介绍每次作业的设计思路关键点、同步块与锁的选择以及调度器迭代,再展示最后的UML协作图。 在第二部分将介绍程序bug、hack和test策略。 在第三部分讲述心得体会。 一、三次作