java中线程
1
进程是指运行中的应用程序,每个进程都有直接独立的内存空间。一个应
用程序可以同时启动多个进程如IE,每次打开一个浏览器窗口,就启动了
一个新的进程。
线程是指进程中的一个执行流程,一个进程可以有多个线程组成,在一个
进程中可以同时运行多个不同的线程,分别执行部同的任务,当进程内的
多个线程同时运行时,这种运行方式称为并发运行。
线程的创建:
Java程序有主线程,main方法就是主线程。此外我们可以创建自己
的线程,它将和主线程并发运行。创建线程的方式有俩种:太原维信科技
1.extends Thread
2.实现Runnable接口
Thread类表示线程类,主要有俩个方法
Run()包含线程运行时所执行的代码
Start()用于启动线程
用户的线程只需要继承Thread类,覆盖Thread类的run()方法即可。
看一个继承Thread的例子:太原维信科技 http://www.bjweixin.com
public class TestThread extends Thread {
public void run(){
System.out.println("---");
}
public static void main(String[] args) throws IOException {
TestThread t = new TestThread();
t.start();
}
}
Java虚拟机首先创建并启动主线程,主线程执行main()方法,main方法创
建一个Machine对象,然后调用start()方法启动线程,运行run()方法。
启动2个线程 太原维信科技 http://www.bjweixin.com
public class TestThread extends Thread {
private int a;
public void run(){
for(int a=0;a<100;a++){
System.out.println(Thread.currentThread().getName()+":"+a);
}
}
public static void main(String[] args) throws IOException {
TestThread t = new TestThread();
t.start();
TestThread t1 = new TestThread();
t1.start();
}
}
Runnable接口实现线程 太原维信科技 http://www.bjweixin.com
Java不允许一个类继承多个类,当类继承了Thread后就不能继承其他类
,所有java中提供了接口Runnable,可以实现这个接口中的run方法,来实
现线程
public class TestThread implements Runnable {
private int a;
public void run(){
for(int a=0;a<100;a++){
System.out.println(Thread.currentThread().getName()+":"+a);
}
}
public static void main(String[] args) throws IOException {
TestThread t = new TestThread();
Thread t1 = new Thread(t);
t1.start();
Thread t2 = new Thread(t);
t2.start();
}