通过继承Thread创建线程,在主控程序中同时运行两个线程Thread1和Thread2。请在下面横线处填入代码
A.线程其实就是进程中的一个控制单元,它负责就是程序的执行。一个进程中至少有一个线程
B.当一个类实现了Runnable接口后,并实现了其run方法,就可以直接调用这个类的start方法开启线程
C.继承Thread类或者实现Runnable接口都可以封装线程要执行的任务
D.Thread类本身就是一个线程类,可以直接创建Thread类对象,开启线程
A.可以获得对任何对象的互斥锁定
B.通过继承Thread类或实现Runnable接口,可以获得对类中方法的互斥锁定
C.线程通过使用synchronized关键字可获得对象的互斥锁定
D.线程调度算法是平台独立的
A.创建Callable接口的实现类,并实现call()方法,该call()方法将作为线程执行体,并且有返回值
B.创建Callable实现类的实例,使用FutureTask类来包装Callable对象,该FutureTask对象封装了该Callable对象的call()方法的返回值
C.使用FutureTask对象作为Thread对象的target创建并启动新线程
D.调用FutureTask对象的getValue()方法来获得子线程执行结束后的返回值
A.public class MyRunnable extends Runnable{public void run(){}}
B.public class MyRunnable extends Object{public void run(){}}
C.public class MyRunnable implements Runnable{public void run(){}}
D.public class MyRunnable extends Runnable{void run(){}}
A.public class MyRunnable extends Runnable { public void run(){} }
B.public class MyRunnable extends Object { public void run(){} }
C.public class MyRunnable implements Runnable {public void run(){}}
D.public class MyRunnable implements Runnable {void run(){}}
A.public class X implements Runnable{public void run(){……}}
B.public class X extends Thread{public void run(){……}}
C.public class X extends Thread{public int run(){……}}
D.public class X implements Runnable{protected void run(){……}}