Java中wait()和sleep()方法有何区别?
- 内容介绍
- 文章标签
- 相关推荐
本文共计614个文字,预计阅读时间需要3分钟。
前言:最近在做一套题的时候,遇到了这个知识点,所以准备详细整理一下。
区别:sleep()方法是Thread类的静态方法,wait()方法是Object类的成员方法。
sleep()方法:- 导致程序暂停执行指定的毫秒数。- 适用于使线程暂停一段时间,而不释放对同步监视器的占有。
wait()方法:- 会使当前线程等待,直到被同一对象的其他线程调用notify()或notifyAll()方法。- 适用于实现线程间的通信,通常用于多线程同步。
总结:sleep()方法导致程序暂停执行指定的毫秒数,而wait()方法使当前线程等待,直到被其他线程唤醒。
前言:
最近在做一套题的时候,遇到了这个知识点,所以准备详细整理一下。
区别
而当调用wait方法的时候,线程会自动释放对象锁,进入等待此对象的等待锁定池,只有针对此对象调用notify()方法后本线程才进入对象锁定池准备。
本文共计614个文字,预计阅读时间需要3分钟。
前言:最近在做一套题的时候,遇到了这个知识点,所以准备详细整理一下。
区别:sleep()方法是Thread类的静态方法,wait()方法是Object类的成员方法。
sleep()方法:- 导致程序暂停执行指定的毫秒数。- 适用于使线程暂停一段时间,而不释放对同步监视器的占有。
wait()方法:- 会使当前线程等待,直到被同一对象的其他线程调用notify()或notifyAll()方法。- 适用于实现线程间的通信,通常用于多线程同步。
总结:sleep()方法导致程序暂停执行指定的毫秒数,而wait()方法使当前线程等待,直到被其他线程唤醒。
前言:
最近在做一套题的时候,遇到了这个知识点,所以准备详细整理一下。
区别
而当调用wait方法的时候,线程会自动释放对象锁,进入等待此对象的等待锁定池,只有针对此对象调用notify()方法后本线程才进入对象锁定池准备。

