sleep wait 区别,sleep和wait方法区别
本教程运行环境:windows7系统,Python 3.9.1,DELL G3电脑。
1、相同点
sleep和wait都用于线程控制,都可以阻塞线程。
(1) Sleep(百万)可以使用时间指定让他自动醒来。如果时间小于,只能调用interrupt()强行中断;Wait()可以用notify()/notifyAll()直接唤醒。
(2)sleep是线程类的静态方法。睡眠的作用是让线程睡眠到设定的时间,时间到了再恢复,也就是说睡眠会在时间到了再恢复线程。Wait是Object的方法,这意味着可以对任何对象调用wait方法。调用wait方法会挂起调用者的线程,调用者在其他线程调用同一对象的notify方法之前不会被重新激活。
(3)sleep()是让一个线程停止运行一段时间,其控制范围由当前线程决定,wait()由某个对象调用。
2、sleep和wait的区别
(1)这两个方法来自不同的类,即线程和对象。
(2)最重要的是,sleep方法不释放锁,wait方法释放锁,这样其他线程就可以使用同步控制块或方法。
(3)wait、notify和notifyAll只能在同步控制方法或同步控制块中使用,而sleep可以在任何地方使用。
(4)sleep必须捕捉异常,而wait、notify和notify都不需要捕捉异常。
3、实例
进口时间
时间.睡眠(5)
Time.sleep()以上time.sleep(N)可以暂停程序的执行,暂停时间可以根据函数传递的值来确定。
使用多线程时,为了线程的顺利进行,我们会使用函数来暂停一个线程。在多线程中,有两个函数可以实现睡眠和等待,但在使用上也有所不同。
以上是python睡眠和等待的对比分析。相信大家看完文章,已经可以分辨出它们的区别和联系,特别注意这一步的开锁。
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。