------- <a href="http://www.itheima.com" target="blank">android培训</a>、<a href="http://www.itheima.com" target="blank">java培训</a>、期待与您交流! ----------
一:实现线程的两种方法
1,继承Thread类
2,实现Runnable接口
二:线程同步
同步的前提:
1,必须要有两个或两个以上的线程
2,必须是多个线程使用同一个锁
3,必须保证同步中只能有一个线程在运行
synchronized(对象) {
需要同步的代码块
}
synchronized也可放在方法名前使之成为同步方法,同步函数使用的锁是this
静态的同步方法使用的锁是该方法所在类的字节码文件对象,类名.class
三:线程间通信(操作同一资源,但操作的方法不同)
wait(),notify(),notifyAll();三者都要对持有锁的线程操作,都使用在同步中,因为只有同步才具有锁
这些操作线程的方法定义在object类中,因为这些操作都有标识所操作线程的锁,同一个锁上的等待线程只能被相同锁的notify唤醒,锁可以是任意对象。