python time.sleep()是睡眠线程还是进程

yipeiwu_com6年前Python基础

python time.sleep()-睡眠线程还是进程?

它会阻止线程。如果查看Python源代码中的Modules / timemodule.c,您会看到在调用中floatsleep(),睡眠操作的实质部分包含在Py_BEGIN_ALLOW_THREADS和Py_END_ALLOW_THREADS块中,允许其他线程继续执行当前线程睡觉。你也可以用一个简单的python程序来测试它:

import time
from threading import Thread
class worker(Thread):
  def run(self):
    for x in xrange(0,11):
      print x
      time.sleep(1)
class waiter(Thread):
  def run(self):
    for x in xrange(100,103):
      print x
      time.sleep(5)
def run():
  worker().start()
  waiter().start()

哪个会打印:

>>> thread_test.run()
0
100
>>> 1
2
3
4
5
101
6
7
8
9
10
102

ps:下面看下Python Sleep休眠函数

Python 编程中使用 time 模块可以让程序休眠,具体方法是time.sleep(秒数),其中”秒数”以秒为单位,可以是小数,0.1秒则代表休眠100毫秒。

# 例1:循环输出休眠1秒
import time
i = 1
while i <= 3:
  print i # 输出i
  i += 1
  time.sleep(1) # 休眠1秒1234567
# 例2:循环输出休眠100毫秒
import time
i = 1
while i <= 3:
  print i # 输出i
  i += 1
  time.sleep(0.1) # 休眠0.1秒 

总结

以上所述是小编给大家介绍的python time.sleep()是睡眠线程还是进程,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对【听图阁-专注于Python设计】网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

相关文章

Python同步遍历多个列表的示例

Python同步遍历多个列表的示例

Python的for循环十分灵活,使用for循环我们可以很轻松地遍历一个列表,例如: a_list = ['z', 'c', 1, 5, 'm'] for each in a_lis...

python统计多维数组的行数和列数实例

python菜鸟,每天都要进步一点点。 二维元组的例子: A = ((1, 1, 1), (1, 1, 1),(1, 1, 1),(0, 0, 0)) print len(A) #...

解决Python下json.loads()中文字符出错的问题

解决Python下json.loads()中文字符出错的问题

Python:2.7 IDE:Pycharm5.0.3 今天遇到一个问题,就是在使用json.load()时,中文字符被转化为Unicode码的问题,解决方案找了半天,无解。全部代码...

详解python的数字类型变量与其方法

前言 python数据类型是不允许改变的,这就意味着如果改变 Number 数据类型的值,将重新分配内存空间。下面话不多说,来看看详细的介绍吧。 以下实例在变量赋值时 Number 对...

django解决跨域请求的问题详解

解决方案 1.安装django-cors-headers pip install django-cors-headers 2.配置settings.py文件 INSTAL...