多线程和同步的几种实现方法

多线程,分别是继承Thread类与实现Runnable。

同步的实现方法有五种,分别是synchronized、wait与notify、sleep、suspend、join

synchronized:一直持有锁,直至执行结束。

wait():使一个线程处于等待状态,并且释放所持有的对象的lock,需捕获异常。

sleep():是一个正在运行的线程处于睡眠状态,是一个静态方法,需捕获异常,不释放锁。

notify():唤醒一个处于等待状态的线程,注意的是在调用此方法的时候,并不能确切唤醒某一个等待状态的线程,而是由JVM确定唤醒那个线程,而且不是按优级。

notityAll():唤醒所有处入等待状态的线程,注意并不是给所有线程一个对象的锁,而是让他们竞争。

posted @ 2016-04-06 15:43  暖暖的幸福1  阅读(302)  评论(0编辑  收藏  举报