帝王谷资源网 Design By www.wdxyy.com

一、线程创建方法

1. 普通创建

import threading
def run(name):
  for i in range(3):
    print(name)
if __name__ == '__main__':
  t1 = threading.Thread(target=run, args=("t1",))
  t2 = threading.Thread(target=run, args=("t2",))
  t1.start()
  t2.start()

--------------------------------------------
t1
t2
t2
t1
t2
t1

2. 自定义线程类

import threading
class MyThread(threading.Thread):
  def __init__(self, name):
    super(MyThread, self).__init__()
    self.name = name
  def run(self):
    for i in range(3):
      print(self.name)
if __name__ == "__main__":
  t1 = MyThread("t1")
  t2 = MyThread("t2")
  t1.start()
  t2.start()

二、线程的使用

1.守护线程

子线程会随着主线程的结束而结束

t = threading.Thread(target=run, args=("t1",))
t.setDaemon(True) # 把子进程设置为守护线程,必须在start()之前设置
t.start()

2.主线程等待子线程结束

t = threading.Thread(target=run, args=("t1",))
t.setDaemon(True)
t.join() # 设置主线程等待子线程结束
t.start()

3.互斥锁

from threading import Thread,Lock
n = 10
def run():
  global n
  locker.acquire()
  n -= 1
  locker.release()

if __name__ == '__main__':
  locker = Lock()
  t1 = Thread(target=run)
  t2 = Thread(target=run)
  t1.start()
  t2.start()

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。

标签:
python,多线程,threading

帝王谷资源网 Design By www.wdxyy.com
广告合作:本站广告合作请联系QQ:858582 申请时备注:广告合作(否则不回)
免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件! 如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
帝王谷资源网 Design By www.wdxyy.com

P70系列延期,华为新旗舰将在下月发布

3月20日消息,近期博主@数码闲聊站 透露,原定三月份发布的华为新旗舰P70系列延期发布,预计4月份上市。

而博主@定焦数码 爆料,华为的P70系列在定位上已经超过了Mate60,成为了重要的旗舰系列之一。它肩负着重返影像领域顶尖的使命。那么这次P70会带来哪些令人惊艳的创新呢?

根据目前爆料的消息来看,华为P70系列将推出三个版本,其中P70和P70 Pro采用了三角形的摄像头模组设计,而P70 Art则采用了与上一代P60 Art相似的不规则形状设计。这样的外观是否好看见仁见智,但辨识度绝对拉满。