摘要:OO课程总结博客 1. 第四单元作业架构设计 1.1 第一次作业 ​ 这次作业主要是实现一个UML类图分析器,并通过输入各种指令来进行类图有关信息的查询。 ​ 为了更好地管理和查询数据,首先在官方包给的UmlClass、UmlInterface和UmlOperation的基础上重新进行封装,实现相应 阅读全文
posted @ 2020-06-19 11:43 韩程凯 阅读(17) 评论(0) 推荐(0) 编辑
摘要:基于信号量的进程同步与互斥(3) 1. 吸烟者问题 涉及代理人和三个吸烟者。 吸烟者永远地循环,首先等待配料,然后制作和吸烟。配料的成分是烟草,纸和火柴。我们假设代理商拥有无限供应的所有三种成分,每个吸烟者都有无限供应的其中一种成分; 也就是说,一个吸烟者有火柴,另一个有纸,第三个有烟草。代理商反复 阅读全文
posted @ 2020-06-07 00:08 韩程凯 阅读(13) 评论(0) 推荐(0) 编辑
摘要:基于信号量的进程同步与互斥(2) 1. 三个进程P1、P2、P3 互斥使用一个包含N(N>0)个单元的缓冲区。P1 每次用produce()生成一个正整数并用put()送入缓冲区某一个空单元中;P2 每次用getodd()从该缓冲区中取出一个奇数并用countodd()统计奇数个数;P3 每次用 g 阅读全文
posted @ 2020-06-07 00:06 韩程凯 阅读(16) 评论(0) 推荐(0) 编辑
摘要:OO第三单元总结 1. JML基础梳理及工具链 1.1 注释结构 JML以javadoc注释的方式来表示规格, 每行都以@起头 行注释 的表示方式为 ; 块注释 的表示方式为 1.2 JML表达式 ​ JML相对于Java新增的表达式成分仅用于JML中的断言(assertion)语句和其他相关的注释 阅读全文
posted @ 2020-05-23 15:17 韩程凯 阅读(26) 评论(0) 推荐(0) 编辑
摘要:基于信号量的进程同步与互斥(1) 本人水平有限,若有错误,欢迎读者及时指出,万分感谢! 1. P/V操作 ​ P/V操作由 P操作原语 和 V操作原语 组成,其意义是在一个整型变量S上定义了两个操作,该操作变量被称之为 信号量S ,只能由P操作和V操作进行修改。S必须置一次且只能置一次初值, S = 阅读全文
posted @ 2020-04-26 13:29 韩程凯 阅读(159) 评论(0) 推荐(1) 编辑
摘要:OO第二单元总结 1. 基于多线程的协同和同步控制的设计策略分析 由于三次作业的多线程设计方法和电梯调度策略相似,所以一起陈述 1.1 多线程设计方法 ​ 本单元三次作业采用的都是 模式,将输入请求作为生产者,将调度器作为共享对象,将电梯作为消费者。 1.2 生产者 ​ 生产者线程进行输入的管理,使 阅读全文
posted @ 2020-04-16 21:26 韩程凯 阅读(28) 评论(0) 推荐(0) 编辑
摘要:面向对象之多线程(可捎带电梯调度) 1. 题目重述 ​ 本题完成的任务为 多部多线程可捎带调度电梯 的模拟,电梯系统具有的功能为: 上下行 、 开关门 、 新增一部可以使用的电梯 ,电梯系统在 某一层开关门时间内可以上下乘客 。电梯系统可以采用任一的调度策略,只要保证在一定时间内将所有乘客送至目的地 阅读全文
posted @ 2020-04-16 10:21 韩程凯 阅读(99) 评论(0) 推荐(0) 编辑
摘要:OO第一单元总结 第一次作业 程序结构分析 __1. 度量类的属性个数、方法个数、每个方法规模、每个方法的控制分支数目、类总代码规模__ | 类名 | 属性个数 | 方法个数 | 类总代码规模 | | : : | : : | : : | : : | | MainClass | 0 | 2 | 20 阅读全文
posted @ 2020-03-19 16:02 韩程凯 阅读(40) 评论(0) 推荐(0) 编辑