import threading线程进程

cpu在执行一个子线程的时候遇到sleep就会利用这段停顿时间去执行另一个子线程。
两个子线程谁先跳出sleep就执行谁。

 

import threading
import time

start = time.time()

def foo(n):
  print("foo%s" % n)      # 1执行
  time.sleep(2)  # 停2秒   
  print("foo执行结束")      # 执行

def bar(n):
  print("bar%s" % n)      # 2 执行
  time.sleep(1)  # 停1秒   
  print("bar执行结束")      # 3 执行

t1 = threading.Thread(target=foo, args=(1,))  # 子线程1
t2 = threading.Thread(target=bar, args=(2,))  # 子线程2

t1.start()
t2.start()

print("----------")
t1.join()  # 加join方法
t2.join()  # 加join方法

end = time.time()
print(end-start)  # 两个子线程执行时间

#####运行结果#######
foo1
bar1
----------
bar执行结束
foo执行结束
2.014805555343628

 

转载于:https://www.cnblogs.com/uncle-kay/p/9601554.html

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值