选择题 9.  同步机制应该遵循的基本准则有______。
【正确答案】 A、B、C、D
【答案解析】 在多线程的环境中,经常会碰到数据的共享问题,即当多个线程需要访问同一个资源时,它们需要以某种顺序来确保该资源在某一时刻只能被一个线程使用,否则,程序的运行结果将会是不可预料的,在这种情况下,就必须对数据进行同步。例如多个线程同时对同一数据进行写操作。即当线程A需要使用某个资源时,如果这个资源正在被线程B使用,同步机制就会使线程A一直等待下去(在很多情况下,都会设置等待的超时时间,而不会让其无限等待),直到线程B结束对该资源的使用后,线程A才能使用这个资源。由此可见,同步机制能够保证资源的安全。
   具体而言,同步机制应该遵循以下基本准则:
   1)空闲让进:空闲说明临界资源没有被其他线程访问,因此,可以允许进入。
   2)忙则等待:忙则说明临界资源正在被访问,因此,必须等待。
   3)有限等待:在等待临界资源的时候,必须能保证在有限的时间能访问到临界资源,否则,将会陷入死等的状态。
   4)让权等待:当线程或进程不能进入临界区的时候,应当释放处理机,防止进程忙等待。即进程状态由运行状态转换为阻塞状态,进程进入阻塞队列中等待。
   所以,本题的答案为ABCD。