ICode9

精准搜索请尝试: 精确搜索
  • BUAA-OO-UNIT2-Elevator2022-05-01 10:32:07

    第一次作业: 同步块设置与锁的选择: 第一次作业相对比较简单,需要实现一个纵向的电梯调度问题。 我将电梯和输入请求都当作线程进行处理,将请求队列作为中间的交互通道,将请求队列中的增加请求、得到请求等操作加锁。这样就可以实现线程安全的交互。 调度器设置: 第一次作业由于只有直上

  • BUAA-oo-第二单元总结2022-05-01 01:31:44

    一、整体思路总结 要求分析 ​ 本单元的三次作业从简单到复杂,最终实现了一个具有横向和纵向两种电梯,具有换乘功能和动态增加电梯的电梯调度设计。 ​ 在第一次作业中,只有简单的纵向电梯,并且不支持动态增加电梯,最需要注意的是搭建好一个架构,并且注意线程安全问题。 ​ 第二次作业中

  • BUAA-OO-第二单元总结2022-05-01 01:04:06

    目录一、需求分析第一次作业:第二次作业:第三次作业:二、方案实现第一次作业第二次作业第三次作业三、同步块设置和锁的选择四、调度器设计分析第一次作业第二次作业第三次作业五、bug分析六、心得体会 一、需求分析 第一次作业: 模拟一个多线程实时电梯系统,有A-E五个楼座,每个楼座一部

  • screen使用小结2022-05-01 01:01:11

    目录安装shell-screen-window关系常用参数快捷键离开当前screen打开一个新的窗口查看窗口列表窗口的快速切换回到行首关闭窗口关闭所有窗口关闭screen删除screen擦除全部的screen分屏锁定屏幕阻止屏幕输出看更多的命令 安装 yum -y install screen 找不到的话 yum install https:/

  • 2022年北航OO第二单元总结2022-04-30 22:00:09

    2022年北航OO第二单元总结 目录2022年北航OO第二单元总结一至三次作业总结1. 第一次作业1.1 需求分析1.2 实现方案1.3 结构分析1.4 测试思路2. 第二次作业2.1 需求分析2.2 实现方案2.3 结构分析2.4 测试思路2.5 总结反思3 第三次作业3.1 需求分析3.2 实现方案3.3 结构分析3.4 总结

  • buaa_oo_第二单元总结2022-04-30 19:34:52

        第一次作业     架构模式:   第一次作业只涉及每个楼座的一部电梯,不涉及横向电梯及换乘等,逻辑较简单。在架构上建立了Inputhandler类来处理输入请求,将请求加入同步队列waitQuene中;调度器设计:在课程组的强调和往届经验指导下,加入了Schedule控制器线程类,Schedule与Inputh

  • OO第二单元总结2022-04-30 17:31:06

    第二单元总结 1.同步块设置与锁的选择: ​ 三次作业中基本都遵循生产者-消费者模式 第一次作业:因为第一次作业的结构较简单,故没有设置调度器,而是将Input线程直接通过传送带类与电梯相连.传送带类为TaskQueue类,其中有一个容器tasks装着所有的任务同时有end标记结束.put与get方

  • BUAA_OO_2022 Unit2 总结2022-04-30 17:04:34

    BUAA_OO_2022 Unit2 总结 单元总览 本单元的主题是多线程,基于真实的电梯调度场景,学习了基于线程、共享、交互的面向并发和协同抽象的层次设计结构,重点关注并发行为的安全和效率。 此外,我们还学习并实现了生产者-消费者模型、单例模式、黑板模式、流水线模式等,对于面向对象的设计模

  • 第二单元总结2022-04-30 17:02:07

    第二单元总结 同步块的设置和锁的选择 第一次作业 在动手写第一次作业前,我认真阅读了第一周作业当周的实验代码,觉得实验的代码写的非常好,决定以实验代码为模板,完成第一次作业。第一次作业中,但凡某个方法涉及到了共享对象,无论是读还是写,我都给该方法加了一个synchronized的锁,且所有

  • OO第二单元总结2022-04-30 16:32:36

    一、程序架构分析 (一)、总体设计思路 第二单元的内容为多线程编程,具体任务为多个电梯的实时调度及交互。 在电梯调度方面,抽象出Strategy类,为每个Elevator对象都独立设置一个Strategy对象,用于确定电梯运行目标。具体实现,为每一部电梯设置一张工作表,表中每个元素为自定义的ListNode类

  • BUAA面向对象2022第二单元总结2022-04-30 12:34:47

      ​ BUAA面向对象2022第二单元总结 ​ 总览 作业内容 本单元的主要作业内容为电梯调度,共有3次作业,为迭代开发。 第一次作业为纵向电梯调度。 第二次作业增加了横向电梯,但乘客均能一次到达目的地。 第三次作业加入需要换乘的乘客请求。 完成情况 我采用了生产者-消费者模式,通过调

  • BUAA-OO-Unit2-单元总结2022-04-30 12:03:31

    BUAA-OO-Unit2-单元总结 目录BUAA-OO-Unit2-单元总结一、锁与同步块1、线程选择2、锁和同步块的设置二、调度器设计1、调度器数据结构分析2、调度器功能结构分析第五次作业主要功能设计第六次作业主要功能改动第七次作业主要功能设计拆分策略算法代价函数设计三、架构分析第五次作

  • BUAA-OO-Unit2-Elevator-Summary2022-04-30 02:00:06

    第二单元作业总结--目标选层电梯调度 目录第二单元作业总结--目标选层电梯调度一、架构设计及UML1、第一次作业2、第二次作业3、第三次作业4、UML协作图5、扩展可能二、线程安全控制1、设计模式2、线程安全类三、调度器设计1、纵向电梯调度2、横向电梯调度3、请求拆分方式4、程序

  • BUAA OO 第二单元总结与反思2022-04-30 01:31:07

    BUAA OO 第二单元总结与反思 写在前面 本单元的主要内容是了解并学习Java的多线程的相关知识,并且运用所学知识完成三次电梯作业的迭代。需要主要到的是,我们本单元作业真正需要用到的多线程知识是有限的,还有诸如线程池、各类锁、各种封装线程安全的数据结构等等内容需要我们自己去

  • OO 第二单元总结2022-04-29 20:04:13

    第一次作业设计 代码架构 |- InputHandler 输入类,线程 |- Elevator 电梯类,线程 |- Request 单个请求 |- RequestQueue 等待队列,为Elevator与InputHandler的公有对象 |- OutputHandler 输出类 |- MainClass 主类 框架设计 线程有Elevator和InputHandler。 InputHandler在接收

  • BUAA OO 第二单元总结2022-04-29 17:34:11

  • BUAA_OO_第二单元总结2022-04-29 13:02:43

    OO第二单元总结 摘要 第二单元相对于第一单元,在思路构建和过程模拟的难度上有了较大的提升,因为多线程本身的不确定性和bug的随机复现性,所以需要我们构建出良好的架构以及我们要对自己的代码运行过程有着极为清晰的认识。然而,相对于第一单元,在面向对象的思路上难度稍微好了一些,主要

  • BUAA OO Unit2总结2022-04-28 21:04:49

    BUAA OO Unit2`总结 1 第五次作业 1.1 同步块的设置和锁的选择 第五次作业中我的锁主要设在ReqQueue类和Output类,Output类是为了防止输出线程不安全的问题出现,此处不必赘述。ReqQueue类中为了防止线程安全问题出现,我在方法上加了锁,同一时刻只允许一个线程访问ReqQueue这个对象。

  • OO2022第二单元个人总结2022-04-28 21:03:47

    OO2022第二单元个人总结 在第二单元中,我们学习了多线程程序的运行,同时也了解了如何在并发运行时,保障程序的可靠性与安全性。在第一次作业中,由于每个楼座只有一座电梯,实际上并没有多电梯共享同一资源的情况,几乎不会出现安全问题(除了需要重新封装安全化输出类

  • 北航20级oo课程第二单元总结2022-04-27 23:33:42

    第二单元总结   第二单元要求我们搭建一个多线程的电梯系统,由于是第一次接触多线程问题,在设计代码架构时,很容易会出现线程安全问题,这类问题在复现上十分困难,因此非常考验我们对线程安全的理解。下面我将阐述自己的作业设计。 hw5: 作业要求:   要求实现纵向电梯的调度,保证乘客

  • BUAA_OO_2022_第二单元总结2022-04-27 02:00:43

    面向对象 第二单元总结 第二单元的任务是完成一个电梯调度系统,尽可能快的将所有人送到相应的目的地。主要考察了我们对于多线程程序的编写以及线程安全问题的理解。 第一次作业 总体架构 由于第一次作业的任务比较简单,所以我直接选择了生产者-消费者的架构。其中,我在输入线程与电

  • OO第二单元总结2022-04-27 01:00:59

    OO第二单元总结 ​ 第二单元的主要任务是电梯调度。在第一次作业中,虽然是有多个楼多部电梯,但实际上电梯之间没有关系,因此我认为第一次只是一个生产消费模式的实例,主要难点是刚接触线程,需要考虑线程的安全问题。而第二次作业是真正有了多电梯之间的调度问题,在这次作业中我采用了“

  • 【GitLab管道】job、script、stages、variables2022-04-25 23:33:42

    job 在每个项目中,使用名为.gitlab-ci.yml的YAML文件配置GibLab CICD管道。在文件中可以定义一个或多个作业(job)。每个作业必须具有唯一的名称。每个作业是独立执行的。作业定义了在约束条件下进行相关操作,每个作业至少要包含一个script。 job1: script: "execute-script-for-job1"

  • ETL调度批量管理工具 TASKCTL 8.0 最简安装2022-04-24 12:00:36

    认识 TASKCTL TASKCTL是成都塔斯克信息技术有限公司,专为批量作业调度自动化打造的,一款轻量企业级免费敏捷调度工具。产品以 “专业、专注” 为设计理念,结合 ETL 调度技术领域的特点,构建了一套直观易用的 ETL 调度设计、监控 维护、管理平台。可为从业人员提供简便、统一的方法来

  • 处理机管理——调度算法的评价指标2022-04-23 00:32:05

    CPU利用率:指CPU“忙碌”的时间占总时间的比例。 系统吞吐量:单位时间内完成作业的数量 周转时间:从作业被提交给系统开始,到作业完成为止的这段时间间隔。 它包括四个部分: 作业在外存后备队列上等待作业调度(高级调度)的时间、进程在就绪队列上等待进程调度(低级调度)的时间、 进程在CP

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有