python sleep和wait对比总结


Posted in Python onFebruary 03, 2021

在多线程的使用时,为了线程的顺利进行,我们会使用函数来对某个线程进行暂停运行。在多线程中有两个函数可以实现sleep和wait,不过它们在使用时也有不同之处。为了帮助大家更好理清它们之间的相同与区别点,本篇就python中sleep和wait两个函数展开具体的分析。

1.相同点

sleep和wait都是用来进行线程控制,都可以使线程阻塞。

(1)sleep(milliseconds)可以用时间指定来使他自动醒过来,如果时间不到你只能调用interreput()来强行打断;wait()可以用notify()/notifyAll()直接唤起.

(2)sleep是Thread类的静态方法。 sleep的作用是让线程休眠制定的时间,在时间到达时恢复,也就是说sleep将在接到时间到达事件事恢复线程 ; wait是Object的方法,也就是说可以对任意一个对象调用wait方法,调用wait方法将会将调用者的线程挂起,直到其他线程调用同一个对象的notify方法才会重新激活调用者

(3)sleep()是让某个线程暂停运行一段时间,其控制范围是由当前线程决定,wait()是由某个确定的对象来调用的。

2.sleep和wait的区别

(1)这两个方法来自不同的类分别是Thread和Object

(2)最主要是sleep方法没有释放锁,而wait方法释放了锁,使得其他线程可以使用同步控制块或者方法。

(3)wait,notify和notifyAll只能在同步控制方法或者同步控制块里面使用,而sleep可以在任何地方使用

(4)sleep必须捕获异常,而wait,notify和notifyAll不需要捕获异常

3.实例

import time
time.sleep(5)
time.sleep(N)

上面的time.sleep()可以暂停程序的执行,暂停的时间可以根据函数传的值来定。

到此这篇关于python sleep和wait对比总结的文章就介绍到这了,更多相关python sleep和wait对比分析内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
python编写微信远程控制电脑的程序
Jan 05 Python
python2.7无法使用pip的解决方法(安装easy_install)
Apr 03 Python
python 读取目录下csv文件并绘制曲线v111的方法
Jul 06 Python
python3.6利用pyinstall打包py为exe的操作实例
Oct 31 Python
把pandas转换int型为str型的方法
Jan 29 Python
浅谈Python3中strip()、lstrip()、rstrip()用法详解
Apr 29 Python
Python-while 计算100以内奇数和的方法
Jun 11 Python
解决pyqt5中QToolButton无法使用的问题
Jun 21 Python
2020新版本pycharm+anaconda+opencv+pyqt环境配置学习笔记,亲测可用
Mar 24 Python
Python request使用方法及问题总结
Apr 26 Python
Django admin管理工具TabularInline类用法详解
May 14 Python
Python中的pprint模块
Nov 27 Python
Python实现简单猜数字游戏
Feb 03 #Python
python 实现图片裁剪小工具
Feb 02 #Python
python向xls写入数据(包括合并,边框,对齐,列宽)
Feb 02 #Python
Python datetime模块的使用示例
Feb 02 #Python
Python基于argparse与ConfigParser库进行入参解析与ini parser
Feb 02 #Python
python中子类与父类的关系基础知识点
Feb 02 #Python
python中time包实例详解
Feb 02 #Python
You might like
php访问查询mysql数据的三种方法
2006/10/09 PHP
解析mysql中UNIX_TIMESTAMP()函数与php中time()函数的区别
2013/06/24 PHP
php将mysql数据库整库导出生成sql文件的具体实现
2014/01/08 PHP
PHP类的声明与实例化及构造方法与析构方法详解
2016/01/26 PHP
php 如何设置一个严格控制过期时间的session
2017/05/05 PHP
javascript动态添加表格数据行(ASP后台数据库保存例子)
2010/05/08 Javascript
JQuery each()函数如何优化循环DOM结构的性能
2012/12/10 Javascript
基于dom编程中 动态创建与删除元素的使用
2013/04/17 Javascript
jquery中get,post和ajax方法的使用小结
2014/02/04 Javascript
javascript数组去重小结
2016/03/07 Javascript
js实现页面a向页面b传参的方法
2016/05/29 Javascript
JQuery 设置checkbox值二次无效的解决方法
2016/07/22 Javascript
Js操作DOM元素及获取浏览器高宽的简单方法
2016/09/08 Javascript
详解jquery选择器的原理
2017/08/01 jQuery
浅析Vue项目中使用keep-Alive步骤
2018/07/27 Javascript
vue element table 表格请求后台排序的方法
2018/09/28 Javascript
vue如何实现自定义底部菜单栏
2019/07/01 Javascript
three.js利用射线Raycaster进行碰撞检测
2020/03/12 Javascript
[01:03:37]Secret vs VGJ.S Supermajor小组赛C组 BO3 第二场 6.3
2018/06/04 DOTA
[50:05]VGJ.S vs OG 2018国际邀请赛淘汰赛BO3 第二场 8.22
2018/08/23 DOTA
[01:36:19]Secret vs NB 2018国际邀请赛小组赛BO2 第一场 8.19
2018/08/21 DOTA
[01:06:19]DOTA2-DPC中国联赛定级赛 LBZS vs SAG BO3第二场 1月8日
2021/03/11 DOTA
Python的Django REST框架中的序列化及请求和返回
2016/04/11 Python
快速了解Python开发中的cookie及简单代码示例
2018/01/17 Python
tensorflow 恢复指定层与不同层指定不同学习率的方法
2018/07/26 Python
浅谈关于Python3中venv虚拟环境
2018/08/01 Python
python3.6使用pickle序列化class的方法
2018/10/22 Python
详解Django中views数据查询使用locals()函数进行优化
2020/08/24 Python
全球最大最受欢迎的旅游社区:Tripadvisor
2017/11/03 全球购物
JBL美国官方商店:扬声器、耳机等
2019/12/01 全球购物
Java TransactionAPI (JTA) 主要包含几部分
2012/12/07 面试题
党支部公开承诺践诺书
2014/03/28 职场文书
幼儿园教师自荐书
2015/03/06 职场文书
Python基于百度AI实现抓取表情包
2021/06/27 Python
5种方法告诉你如何使JavaScript 代码库更干净
2021/09/15 Javascript
Python docx库删除复制paragraph及行高设置图片插入示例
2022/07/23 Python