线程:程序执行流的最小单元。它是进程内一个相对独立的、可调度的执行单元,是系统独立调度和分派 CPU 的基本单位。
多线程编程是为了最大限度地利用 CPU 资源——当处理某个线程不需要占用 CPU 而只需要利用 IO 资源时,允许其他的那些需要 CPU 资源的线程有机会利用 CPU。
多线程的实现:
public class CreateThread {
public static void main(String[] args) {
Thread1 thread1 = new Thread1();
//声明一个Thread1对象,这个Thread1类继承自Thread类的
Thread thread2 = new Thread(new Thread2());
//传递一个匿名对象作为参数
thread1.start();
thread2.start();
//启动线程
}
}
class Thread1 extends Thread {
@Override
public void run() {
//在run()方法中放入线程要完成的工作
//这里我们把两个线程各自的工作设置为打印100次信息
for (int i = 0; i < 100; ++i) {
System.out.println("Hello! This is " + i);
}
//在这个循环结束后,线程便会自动结束
}
}
class Thread2 implements Runnable {
@Override
public void run() {
for (int i = 0; i < 100; ++i) {
System.out.println("Thanks. There is " + i);
}
}
}
简单来说线程:就是在同一时间,运行不同的程序。
注:启动线程start系统会自动调用run()方法。