进程是由至少一个或者多个线程组成的
线程是进程最小的基本单位
特性
1.抢占式运行【重要】
给程序分配CPU,按照时间片来执行,单位时间片抢占式执行的,随机抢占的
2.资源共享
同一个进程,有多个线程,这个多个线程式可以共享同一个数据的
java程序:Demo1可以看作一个进程
一个Java程序中有两个线程
1. main主线程
2. 垃圾回收的线程
线程的创建方式
创建一个新的执行线程有两种方法。 一个是将一个类声明为`Thread`的子类。 这个子类应该重写`run`方法`Thread` 。 然后可以分配并启动子类的实例。
class A extends Thread{
@Override
public void run() {
方法体
}
}
另一种方法来创建一个线程是声明实现类`Runnable`接口。 那个类然后实现了`run`方法。 然后可以分配类的实例,在创建`Thread`时作为参数传递,并启动。
class B implements Runnable{
@Override
public void run() {
方法体
}
}