首页 新闻 搜索 专区 学院

java的关于Thread的线程面试题

0
[待解决问题]

Which two CANNOT directly cause a thread to stop executing? (Choose Two)
A. Existing from a synchronized block.
B. Calling the wait method on an object.
C. Calling notify method on an object.
D. Calling read method on an InputStream object.
E. Calling the SetPriority method on a Thread object.
解答:AC

这里面的a、b、c可以理解,但是d、e不能理解,哪位大神路过给看看。

HDWK的主页 HDWK | 初学一级 | 园豆:152
提问于:2017-08-30 18:48
< >
分享
所有回答(4)
0

这是去外企面试么

ycyzharry | 园豆:23668 (高人七级) | 2017-08-30 19:59

做个面试题,就要去外企吗?

支持(0) 反对(0) HDWK | 园豆:152 (初学一级) | 2017-08-30 20:00
0

D中调用read方法后,当前线程等待IO操作完成,进行阻塞状态,所以会停止运行。

E中 我觉得它并不会让线程停止运行,设置线程优先级,并不会会使当前线程让出cpu

cheerupWoo | 园豆:194 (初学一级) | 2017-09-11 10:35
0

D:执行IO操作的读操作。读的过程中会阻塞当前线程,但是不是停止线程,当读结束后线程会进入可运行状态等待CPU资源。

E:当前线程对象执行设置属性方法。显然不会造成线程停止。

Qixf | 园豆:202 (菜鸟二级) | 2017-09-15 13:10
0

阻塞型 I/O,主要阻塞在两个地方:

第一:在调用InutStream.read 方法是阻塞的,它会一直等到数据到来时(或超时)才会返回;第二:在调用ServerSocket.accept()方法时,也会一直阻塞到有客户端连接才会返回;

王小帅 | 园豆:233 (菜鸟二级) | 2018-01-30 17:56
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册