题22

题目

多对一的线程模型中,当一个多线程进程中的某个线程被阻塞后,( )。
A. 该进程的其他线程仍可继续运行
B. 整个进程都将阻塞
C. 该阻塞线程将被撤销
D. 该阻塞线程将永远不可能再执行

分析

在多对一的线程模型中, 由于只有一个内核级线程, 用户级线程的 “多” 对操作系统透明, 因此操作系统内核只能感知到一个调度单位的存在。
因此该进程的一个线程被阻塞后, 该进程就被阻塞, 进程的其他线程当然也都被阻塞。
注, 作为对比, 在一对一模型中将每个用户级线程都映射到一个内核级线程, 所以当某个线程被阻塞时, 不会导致整个进程被阻塞。