Java是一种多线程语言,支持并发编程。并发编程使我们可以将程序分为多个分离、独立运行的任务。通过使用多线程机制,这些独立任务的每一个都将由执行线程来驱动。一个线程就是在进程中的一个单一的顺序控制流。线程模型为编程带来了便利,简化了在单一程序中同时交织在一起的多个任务的处理。
创建和启动java线程
1.1定义任务
线程可以驱动任务,因此需要一种描述任务的的方式,在Java中可以由Runnable接口来提供,要想定义任务,只需要实现Runnable接口,并且重写run()方法,从而使该任务可以执行你的命令。例如下面的例子:
public class MyRunnable implements Runnable{
@Override
public void run(){
System.out.println("MyRunnable running");
}
}
1.2任务的驱动
下面例子中,这个任务的run()不是由单独的线程来驱动的,而是在main()中直接调用(实际上,这里仍旧使用了线程)
public class MainThread {
public static void main(String[] args) {
MyRunnable myRunnable=new MyRunnable();
myRunnable.run();
}
}
当从Runnable导出一个类时,它具有run方法,但是这个方法并无特殊特殊之处,它不会产生任何内在的线程能力,要实现线程能力,必须显式的将一个任务附着到线程上。
1.3 Thread类
将Runnable转为工作任务的传统方式是把它提交给一个Thread构造器,下面的例子展示了如何使用Thread来驱动MyRunnable
public class BasicThreads {
public static void main(String[] args) {
Thread t=new Thread(new MyRunnable());
t.start();
}
}
Thread构造器只需要一个Runnable对象,调用Thread对象的start()方法为该线程执行必要的初始化操作,然后调用Runnable的run方法,以便在新线程中启动该任务。
微信扫一扫关注该公众号