问题:
[单选] 下列关于Java多线程并发控制机制的叙述中,错误的是( )。A . Java中对共享数据操作的并发控制是采用加锁技术
B . 线程之间的交互,提倡采用suspend( )/resume( )方法
C . 共享数据的访问权限都必须定义为private
D . Java中没有提供检测与避免死锁的专门机制,但程序员可以采用某些策略防止死锁的发生
参考答案:B
参考解析:
本题考查多线程的并发控制机制。Java中对共享数据操作的并发控制采用传统的加锁技术,也就是给对象加锁,选项A说法正确。线程之间的交互,提倡采用wait( )和notify( )方法,这两个方法是java.lang.object类的方法,是实现线程通信的两个方法,不提倡使用suspend( )和resume( )方法,它们容易造成死锁,所以选项B说法错误。共享数据的访问权限都必须定义为private,不能为public或其他,选项c说法正确。Java中没有提供检测与避免死锁的专门机制,因此完全由程序进行控制,但程序员可以采用某些策略防止死锁的发生,选项D说法正确。