首页 > 代码库 > Java的多线程 --线程的概念

Java的多线程 --线程的概念

  Java的多线程--线程的概念

一个程序同时执行多个任务,通常,每个任务称之为线程(thread),她是线程控制的简称。

可以运行一个以上的任务的程序叫做多线程程序。

1.感觉线程和进程很像,那么他们的区别是什么?

其实他们是有本质的区别:每个进程拥有自己独立的一整套变量,而线程则共享数据。

2.在Java中怎么创建一个线程去执行一个任务。

主要有4个步骤。

1)将任务代码移到实现了Runnable接口类的run方法中,这个接口很简单,只有一个方法。

public interface Runnable
{
 void run();
}
 

 我可以这样实现:

public class MyRunnable implements Runnable
{
  public void run()
{
   //task code
}
}

 2)创建一个类的对象

   Runnable r=new MyRunnable();

3)由Runnable创建一个Thread对象

  Thread t =new Thread(r);

4) 调用start()方法启动线程。

  t.start();

还有一种方法来创建一个线程:

通过构建一个Thread类的子类定义一个线程,这个方法已经不推荐使用了。

1)创建Thread类的子类。

public class MyThread extends Thread
{
   public void run()
{
  //task code
}
}

 

2)创建Thread类的子类对象。

Thread t=new MyThread();

3) 调用start()方法启动线程

 t.start();

 

注意点: 不要调用Thread类或者Runnable对象的run方法。因为直接调用run方法,只会执行同一个线程中的任务,而不会启动一个新的线程。应该调用Thread.start()方法,这个方法将创建一个执行run方法的新线程。