Java多进程
Java多线程的实现
Java中的多线程由Thread类来实现,主要由两种方法。
- 声明一个类来继承Thread,重写run方法。然后通过子类实例启动一个新的进程。
public class MyThread extends Thread {
@Override
public void run() {
//
}
}
public static void main(String[] args) {
Thread t1 = new MyThread();
Thread t2 = new Thread() {
@Overide
public void run() {
//
}
};
t1.start();
t2.start();
}
- 声明一个类来实现Runnable接口,实现run方法。创建Thread对象时传递实现类最为参数
public class MyRunnable implements Runnable {
@Override
public void run() {
//
}
}
public static void main(String[] args) {
MyRunnable myRunnable = new MyRunnable();
Thread thread = new Thread(myRunnable);
thread.start();
}
Java中的进程的状态
A thread state. A thread can be in one of the following states:
- NEW
A thread that has not yet started is in this state. - RUNNABLE
A thread executing in the Java virtual machine is in this state. - BLOCKED
A thread that is blocked waiting for a monitor lock is in this state. - WAITING
A thread that is waiting indefinitely for another thread to perform a particular action is in this state. - TIMED_WAITING
A thread that is waiting for another thread to perform an action for up to a specified waiting time is in this state. - TERMINATED
A thread that has exited is in this state.
A thread can be in only one state at a given point in time. These states are virtual machine states which do not reflect any operating system thread states.
线程同步