首页 > TAG信息列表 > 捎带
BUAA OO 第二单元总结
第一次作业 1、线程安全 由于写第一次作业时刚刚学完多线程,理解不透彻,生怕出错,于是就直接暴力synchronized,凡是访问共享数据地方全都用同步代码块,且同步块的范围很大。 如上图,这是电梯线程类的run方法,其中synchronized块套住了while(true)内电梯的整个决策部分,只剩下电梯状态的面向对象第二单元总结
目录单元内容多线程设计策略 第一次作业第二次作业第三次作业架构分析第一次作业第二次作业第三次作业SOLID设计原则检查bug分析心得与体会 单元内容 本单元的内容是电梯的模拟运行,三次作业不断完善电梯的数量和功能,具体如下: 单部多线程可捎带电梯的模拟 多部多线程可捎带调度电OO第二单元总结——可捎带电梯
OO第二单元总结——电梯 1、设计分析 1.1、单电梯可捎带调度方案 第一次接触多线程,单部电梯采用了单生产者—单消费者的模式,输入线程作为生产者,电梯作为消费者,二者共享一个排队队列hashmap<integer,linkedblockingqueue>记录电梯外等待的人,以及出发楼层,之所以选择hashmap这个容器,OO第二单元作业小结
前言 转眼已是第九周,第二单元的电梯系列作业已经结束,终于体验了一番多线程电梯之旅。 第一次作业是单电梯的傻瓜调度,虽然是第一次写多线程,但在课程PPT的指引下,写起来还是非常容易;第二次作业是单电梯的捎带调度,并加入了负层电梯,写起来也相对容易,不过在写捎带策略时容易出很多BUG;第三BUAAOO——UNIT2 SUMMARY
本单元的题目为设计电梯,通过这单元的学习,我初步了解了关于java多线程编程及线程之间并发安全性设计等方面的内容。以下为对这三次作业的分析与总结。 作业分析 序号 楼层 电梯数量 可停靠楼层 调度策略 1 1-15 1 1-15 任意 2 -3--1,1-16 1 -3OO第二单元总结
OO第二单元总结 概述 OO第二单元的主题是多线程电梯,分为傻瓜式电梯,带捎带的电梯,以及多部捎带电梯的协同运作。这是我第一次从单线程到多线程的过渡,不管是多线程的调试还是测试都给我带来了不少的麻烦,但不管怎么说,我在这一过程中还是收货颇多的。 第五次作业 思路: 第一次电梯作业我OO第二单元总结
第一次作业 设计策略 第一次写多线程,对于多线程还不够了解。导致第一次作业的结构非常奇怪(不好),占用大量线程资源,也完全没有可拓展性,可以说完全不是一个合格的多线程程序。第一次不知道如何写队列,所以没来一个request我就会为其创建一个进程,并且直接进行put访问。对于托盘中,将put和gOO第二单元电梯线程系列总结作业
电梯系列第一次作业 功能描述: 傻瓜电梯无需考虑超载捎带 线程模式: Producer-Consumer Pattern 思路: 第一次作业是一个傻瓜电梯,分别有一个生产者生成电梯指令(也就是Input接口),和一个消费者电梯(Process)运行指令和一个电梯调度器, 调度器为生产者和消费者共享,在生产和消费指令OO电梯作业总结
(一)第五次作业 一、设计思路 生产消费者模型,输入接口是producer,调度器是tray,电梯是customer。由于只有一架电梯,所以生产消费模型满足以下条件: 一个生产者,一个消费者 托盘不为空时,消费者可以取走请求。任何时候,生产者可以添加请求。(托盘无容量限制) 互斥:生产者——生产者,消费者—