假设有两个线程thread1和thread2,并且thread1正在执行,以下哪些方法可以让程序转而执行thread2线程()
A: 调用thread1的sleep(longmillis)方法
B: 调用thread1的yield()方法
C: 调用thread1的join()方法
D: 调用thread2的join()方法
A: 调用thread1的sleep(longmillis)方法
B: 调用thread1的yield()方法
C: 调用thread1的join()方法
D: 调用thread2的join()方法
举一反三
- 5.1 在(1)~(3)处填上适当的语句,使程序能正常运行。 class MyThread implements Runable { (1) { while(true){System.out.print("hello"); try { (2) //休眠1秒钟 } catch (InterruptedException e) { e.printStackTrace(); } }}} public class Demo{ public static void main(String []s){ MyThread thread1= (3) //声明创建对象thread1 Thread thread = new Thread(thread1,"线程1") thread.start(); //通过对象thread启动线程 }}
- 调用Thread类的什么方法可以启动一个线程?直接调用Thread类的run()方法可以启动一个线程吗?
- 下列关于Thread类中的join()方法说法错误的是() A: 调用join()方法可以使其他线程由正在运行状态变成阻塞状态 B: join()方法可以通过Thread类名直接访问 C: 子类中可以重写join()方法 D: join()方法的作用是等待调用该方法的线程结束后才能执行
- 下面关于Java中线程的说法不正确的是( )。 A: 调用join()方法可能抛出异常InterruptedException B: sleep()方法是Thread类的静态方法 C: 调用Thread类的sleep()方法可终止一个线程对象 D: 线程启动后执行的代码放在其run方法中
- 调用 Thread类的run()方法创建线程对象