多线程问题总结

来源:互联网 发布:淘宝网卖家体检中心 编辑:程序博客网 时间:2024/06/05 16:47

一、多线程的实现方式
java提供了两种方式,一个是继承Thread类,另一个是实现Runnable接口,由于java不支持多继承,所以在多继承的时候,我们得优先选用 实现 Runnable接口,因为我们可以通过实现接口的办法,间接的实现多继承。
二、wait()和sleep()的区别
其次问到了wait()和sleep()的区别,这两个方法区别在于:sleep()是Thread类的,而wait()是Object类的,sleep是睡眠,指定时间后线程会继续执行,不放弃对cpu资源的占用(即不放弃对象锁),相当于暂停指定t,wait()是等待,需要唤醒,它会释放对cpu资源的占用(即会放弃对象锁),调用notify()和notifyAll()唤醒。