Java线程状态及流程图 |
类别属性:程序Web开发 > Oracle/Sun | 发布时间:2013/4/17 9:24:08 | 视频长度:00:04:05
当一个线程实例创建,线程就处在初始状态,通过Start()方法来启动线程,使线程进入就绪队列runnable状态,线程获取CPU进入运行状态,在运行中的线程可以通过wait()方法使线程进入等待状态waiting状态;等待状态的线程通过调用notify()或 notifyAll()方法进入就绪队列中。同时运行状态的线程也可以通过join()方法加入到等待队列中,通过run()方法即恢复到就绪队列中。运行状态还可以通过sleep()方法使线程进入休眠状态,当分配的时间片结束则自动恢复队列执行。运行状态还可通过同步等待同步锁使其它进入阻塞状态。在当前的同步线程运行完毕之后同步锁才会释放。其它还有一个yield()方法是用来暂停当前正在执行的线程对象,并执行其他线程。最后,当线程运行完毕或中断或异常退出线程则进入死亡dead状态,此时无法启动无法调用start()方法。
Java多线程常用的方法有优先级(priority)、sleep()、wait()、notify()/notifyAll()、Synchronizing Block、yield()和join()。在后面的视频示例中将逐一介绍。