从第4次做业开始,就进入了多线程编程的环节。我我的对于多线程的理解就是在一个程序在执行时有多个执行流,可以实现多个线程并发执行的技术。因为能在同一时间内执行多个线程,于是可以提高计算机的总体处理性能。编程
第五次做业分析:安全
因为第五次做业是我第一次接触到多线程编程,所以此次做业对于我来讲难度仍是至关大的。这次做业主要出现的问题是会出现时间上的偏差,指导书上说明了偏差在100ms之内是合理的。可是个人做业在有空闲电梯的时候会出现时间偏差超过100ms的状况。多线程
在bug的方面,公测点中有一个点未经过。在个人程序中,当两台电梯同时运行,而且运行到同一楼层时,会出现时间的错乱。究其缘由在于对时间的访问时,第二台电梯的运行时间加上了原本该属于另外一台电梯的请求的输入时间,于是致使出错。并发
第六次做业分析:性能
第六次做业在控制台读取监控路径完成后,启动 Snapshot 线程,而后启动 snapshot 中的 四个触发器线程。每隔必定的时间段,Snapshot 就会更新而后唤醒各个触发器 执行相应的操做。测试
第七次做业分析:线程
第7次做业主要出现的问题在于寻找最短路径中如何将全部的通过的点输出出来,这致使了我花费了很长的时间。在测试的时候,遇到的主要问题是因为出租车的位置是随机的,难以确认出租车在去往目的地的过程当中,通过的路径是不是最短的路径,这给测试者带来了必定麻烦。3d
心得体会:blog
对于通常性的bug测试来讲,主要是针对指导书上的细节部分,检查被测者的细节完成度如何。好比输入是否完整。本人在第7次做业中,出租车运行的过程当中的输出遗漏了某些信息而被报了imcomplete。其次,在这个基础上,能够从在合理测试的范围内进行极限情况的测试。同步
对于线程安全性的bug测试来讲,线程安全问题主要是因为数据竞争引发的。好比在第6次做业中,读写操做同时发生。所以咱们能够找到测试的代码中同步的地方,分析竞争数据的代码段的逻辑,相应地构造测试数据。
整体来看,这三次做业是对多线程编程应用的逐步加深,并且代码重用的部分也在不断增长。所以以后咱们应该尽量地写出可移植性强的代码,这样才能减少以后的工做量。
6系的主要矛盾一直是日益增加的OO需求和同窗愈来愈紧的时间之间的矛盾。在昆仑课程的影响下,仍是要克服拖延症和懒惰的性格,望你们共勉。