A. 编译错误,没有定义线程的run方法; B. 由于没有定义线程的run方法,而出现运行错误; C. 编译通过,运行输出 values 0 to 9 D. 编译通过,运行无输出
A. 允许两线程并行运行,而且互相通信; B. 保证在某时刻只有一个线程可访问方法或对象; C. 保证允许两个或更多处理同时开始和结束; D. 保证两个或更多线程同时开始和结束。
A. init() B. start() C. run() D. notifyAll()
A. 线程调用了 wait()方法; B. 线程调用了yield()方法; C. 线程调用了 pause()方法; D. 线程调用了 sleep() 方法;
A. 适合多个相同程序代码的线程去处理同一个资源的情况 B. 把线程同程序代码、数据有效的分离,很好地体现了面向对象的设计思想 C. 可以避免由于Java的单继承带来的局限性 D. 编写简单,可以不通过Thread类直接创建线程
A. 当两个线程互相等待对方释放同步锁时会发生死锁 B. Java虚拟机没有检测和处理死锁的措施 C. 一旦出现死锁,程序会发生异常 D. 处于死锁状态的程序处于阻塞状态,无法继续运行
A. 锁定资源,使同一时刻只有一个线程去访问它,阻止多个线程操作同一个资源引发错误 B. 提高线程的执行效率 C. 让线程独占一个资源 D. 让多个线程同时使用一个资源