Java 多线程
- Thread.start()之后线程进入到就绪状态,等待cpu资源的调度。
-
调整线程优先级:Java线程有优先级,优先级高的线程会获得较多的运行机会。Java线程的优先级用整数表示,取值范围是1~10,Thread类有以下三个静态常量:static int MAX_PRIORITY线程可以具有的最高优先级,取值为10。static int MIN_PRIORITY线程可以具有的最低优先级,取值为1。static int NORM_PRIORITY分配给线程的默认优先级,取值为5。Thread类的setPriority()和getPriority()方法分别用来设置和获取线程的优先级。
- Thread.sleep(long millis),使线程转到阻塞状态。
-
线程等待:Object类中的wait()方法,导致当前的线程等待,直到其他线程调用此对象的 notify() 方法或 notifyAll() 唤醒方法。这个两个唤醒方法也是Object类中的方法,行为等价于调用 wait(0) 一样。
-
线程加入:join()方法,等待其他线程终止。在当前线程中调用另一个线程的join()方法,则当前线程转入阻塞状态,直到另一个进程运行结束,当前线程再由阻塞转为就绪状态。