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.