题目
【单选题】在多对一的线程模型中,当一个多线程进程中的某个线程被阻塞后, ()A. 该进程的其他线程仍可继续运行B. 整个进程都将阻塞C. 该阻塞线程将被撤销D. 该阻塞线程将永远不可能再执行
【单选题】在多对一的线程模型中,当一个多线程进程中的某个线程被阻塞后, ()
A. 该进程的其他线程仍可继续运行
B. 整个进程都将阻塞
C. 该阻塞线程将被撤销
D. 该阻塞线程将永远不可能再执行
题目解答
答案
B. 整个进程都将阻塞
解析
多对一的线程模型中,多个用户级线程映射到一个内核级线程。此时,所有用户线程的执行依赖于唯一的内核线程。若某个线程因阻塞操作(如I/O)导致内核线程暂停,则整个进程无法继续执行其他线程,因为内核线程是唯一与CPU交互的实体。因此,阻塞会波及整个进程,其他线程无法运行。
关键概念解析
- 多对一线程模型:用户级线程与内核级线程为多对一关系,所有用户线程共享一个内核线程。
- 阻塞操作:线程执行I/O操作时需等待资源,导致内核线程暂停,无法调度其他用户线程。
选项分析
- A选项错误:若某线程阻塞,内核线程被占用,无法切换到其他用户线程,因此其他线程无法运行。
- B选项正确:阻塞操作导致内核线程暂停,整个进程随之阻塞。
- C、D选项错误:线程阻塞是暂时状态,不会被撤销或永久停止。