老师在讲不同步的情况下Chrome浏览器先刷新,IE浏览器后刷新,IE浏览器能输出结果,
我在这里说一下我的理解
首先:chrome浏览器和IE浏览器发送的是两个不同的请求,因此,他们的request对象,和response对象是不同的
那么你谷歌浏览器先请求,然后休眠了,因为是多线程,并且是用成员变量作为输出流的载体,那么过程是这样, 谷歌浏览器请求: pw=谷歌的response → 谷歌线程休眠 → IE线程开始 pw=IE的response
→ 谷歌线程唤醒,往下执行 → 谷歌线程拿着已经被覆盖的pw(IE的响应字符输出流) 做输出,这就导致了,谷歌页面是空白,并且IE浏览器不仅没有在5秒休眠结束才显示, 而是在谷歌浏览器的响应代码执行完毕就显示了。
所以:这和老师解释是不同的,老师说,是因为close方法执行了,导致拿不到pw对象,
我觉得这说法不对误导同学了。为此回去重新学习了一轮多线程
你看我这理解对还是老师的说法对?