第六次作业第2题分析与改进建议.pdfVIP

  • 0
  • 0
  • 约小于1千字
  • 约 1页
  • 2026-06-02 发布于北京
  • 举报

第六次作业第2题第1问和第2问

2014011328计43

1.Second代码结果为55,即为从1相加到10的结果;

First代码结果有一定随机性,多为14或15,偶尔会出现13

的结果。是在getNumber()和add()函数中,有人为的

线程的延迟。以getNumber()为例,在i++和returni之间

有200毫秒的时间延迟,而在这段时间里,其他的几个线程

也会通过getNumber()对公有数据i的值进行改变,导致在

returni时,i的值已不再是我们所希望的原先的那个i了。

add()同理,故在1到10之中数的几个数进行了加法

运算,导致结果错误。

2.第一处:使得当前线程沉睡200毫秒,期间i的值可能会发

生改变

第二处:由于引入了多线程,故可能出现

InterruptedException类异常,在方法头处先进行对异常的

,若出现某一个线程被中断,则抛出

文档评论(0)

1亿VIP精品文档

相关文档