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实现在Linux系统下更改当前进程运行用户
Feb 04 Python
查看python下OpenCV版本的方法
Aug 03 Python
python实现名片管理系统项目
Apr 26 Python
python输入多行字符串的方法总结
Jul 02 Python
Tensorflow实现酸奶销量预测分析
Jul 19 Python
一篇文章弄懂Python中的可迭代对象、迭代器和生成器
Aug 12 Python
python retrying模块的使用方法详解
Sep 25 Python
python获取引用对象的个数方式
Dec 20 Python
在keras中获取某一层上的feature map实例
Jan 24 Python
python自动化测试三部曲之unittest框架的实现
Oct 07 Python
使用python爬取抖音app视频的实例代码
Dec 01 Python
python库sklearn常用操作
Aug 23 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共享内存段示例分享
2014/01/20 PHP
PHP中可以自动分割查询字符的Parse_str函数使用示例
2014/07/25 PHP
PHP+Mysql+jQuery中国地图区域数据统计实例讲解
2015/10/10 PHP
针对thinkPHP5框架存储过程bug重写的存储过程扩展类完整实例
2018/06/16 PHP
关于javascript中this关键字(翻译+自我理解)
2010/10/20 Javascript
jQuery中创建实例与原型继承揭秘
2011/12/21 Javascript
jQuery中将函数赋值给变量的调用方法
2012/03/23 Javascript
使用pjax实现无刷新更改页面url
2015/02/05 Javascript
javascript基于DOM实现省市级联下拉框的方法
2015/05/14 Javascript
Bootstrap每天必学之按钮(Button)插件
2016/04/25 Javascript
Angular ng-class详解及实例代码
2016/09/19 Javascript
JQuery中解决重复动画的方法
2016/10/17 Javascript
Node.js 中exports 和 module.exports 的区别
2017/03/14 Javascript
微信小程序实现滴滴导航tab切换效果
2018/07/24 Javascript
Node.js的进程管理的深入理解
2019/01/09 Javascript
手挽手带你学React之React-router4.x的使用
2019/02/14 Javascript
移动端自适应flexible.js的使用方法(不用三大框架,仅写一个单html页面使用)推荐
2019/04/02 Javascript
nodejs实现获取本地文件夹下图片信息功能示例
2019/06/22 NodeJs
基于vue+echarts数据可视化大屏展示的实现
2020/12/25 Vue.js
使用Python将数组的元素导出到变量中(unpacking)
2016/10/27 Python
python合并同类型excel表格的方法
2018/04/01 Python
Python线性拟合实现函数与用法示例
2018/12/13 Python
Python操作rabbitMQ的示例代码
2019/03/19 Python
python开启debug模式的方法
2019/06/27 Python
python可视化篇之流式数据监控的实现
2019/08/07 Python
python实现七段数码管和倒计时效果
2019/11/23 Python
canvas实现飞机打怪兽射击小游戏的示例代码
2018/07/09 HTML / CSS
雅诗兰黛加拿大官网:Estee Lauder加拿大
2019/07/31 全球购物
意大利在线药房:Farmacia Loreto Gallo
2019/08/09 全球购物
教师节促销活动方案
2014/02/14 职场文书
采购意向书范本
2014/03/31 职场文书
婚礼伴郎致辞
2015/07/28 职场文书
Python中os模块的简单使用及重命名操作
2021/04/17 Python
pytorch model.cuda()花费时间很长的解决
2021/06/01 Python
spring项目中切面及AOP的使用方法
2021/06/26 Java/Android
bose降噪耳机音能消除人声吗
2022/04/19 数码科技