Java线程生命周期
注意当我们运行start时,线程并不是立即执行的,而是根据cpu的执行状况来进行判定。线程的sleep与wait是两个不同的方法,sleep会自动结束阻塞状态,而wait是进入锁池状态,需要进行唤醒。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28
|
public class Test { public static void main(String[] args) throws InterruptedException { AA aa=new AA(); Thread thread=new Thread(aa); thread.start(); for (int i=0;i<10;i++){ Thread.sleep(1000); System.out.println(i+""+thread.getState()); } } } class AA implements Runnable{
@Override public void run() { for (int i=0;i<10;i++){ try { Thread.sleep(1000); } catch (InterruptedException e) { e.printStackTrace(); } System.out.println(i); } } }
|