隔着超薄肉丝进入小说_男女刺激性视频大片_女教师的诱波多野结衣_一级欧美过瘾大片

當(dāng)前位置: 首頁(yè) / 技術(shù)干貨 / 正文
好程序員Python培訓(xùn)分享進(jìn)程與線程知識(shí)

2020-11-26

Python培訓(xùn)

  好程序員Python培訓(xùn)分享進(jìn)程與線程知識(shí),Python開(kāi)發(fā)語(yǔ)言現(xiàn)在已經(jīng)是被大家非常看中的編程語(yǔ)言了,本篇文章好程序員Python培訓(xùn)小編給讀者們分享一下Python進(jìn)程與線程知識(shí)小結(jié),本篇文章具有一定的參考借鑒價(jià)值,感興趣的小伙伴來(lái)了解一下吧,希望對(duì)小伙伴們有幫助。

好程序員

 

傳統(tǒng)方式是調(diào)用2個(gè)方法執(zhí)行1個(gè)任務(wù),方法按順序依次執(zhí)行:

# -*- coding:utf-8 -*-

import threading

import time

def run(n):

  print('task',n)

  time.sleep(3)

if __name__ == '__main__':

  run('t1')

  run('t2')

 

多線程例子

 

2個(gè)線程同時(shí)并發(fā)執(zhí)行1個(gè)任務(wù):

 

# -*- coding:utf-8 -*-

import threading

import time

def run(n):

  print('task',n)

  time.sleep(3)

 

if __name__ == '__main__':

  t1=threading.Thread(target=run,args=('t1',))

  t2=threading.Thread(target=run,args=('t2',))

  t1.start()

  t2.start()

 

自己寫一個(gè)類繼承繼承threading.Thread

 

# -*- coding:utf-8 -*-

import threading

import time

class MyThread(threading.Thread):

  def __init__(self,n):

    super(MyThread,self).__init__()

    self.n=n

  #這里面默認(rèn)就有一個(gè)run方法

  def run(self):

    print('runing task',self.n)

if __name__ == '__main__':

  #在主方法通過(guò)對(duì)象調(diào)用線程

  t1=MyThread('t1')

  t2=MyThread('t2')

  t1.run()

  t2.run()

 

使用for循環(huán)啟動(dòng)多個(gè)線程

 

# -*- coding:utf-8 -*-

import threading

import time

def run(n):

  print('task',n)

  time.sleep(3)

if __name__ == '__main__':

  for i in range(10):

    t=threading.Thread(target=run,args=('t-%s'%i,))

    t.start()

 

 

等多線程同時(shí)執(zhí)行完后,再執(zhí)行其它代碼,因?yàn)榫€程是與其它代碼一起運(yùn)行的

 

# -*- coding:utf-8 -*-

import threading

import time

def run(n):

  print('task',n)

  time.sleep(3)

if __name__ == '__main__':

  time_start=time.time()

  #定義一個(gè)空列表裝線程t實(shí)例

  t_objects=[]

  for i in range(10):

    t=threading.Thread(target=run,args=('t-%s'%i,))

    t.start()

    t_objects.append(t)

  # 等所有線程執(zhí)行完后,再執(zhí)行下面的代碼

  # 因?yàn)榫€程與下面的代碼是同時(shí)運(yùn)行的

  # 要想先等線程執(zhí)行完畢再執(zhí)行其它代碼

  # 使用join()方法進(jìn)行阻塞

  #在這里統(tǒng)一結(jié)束所有t線程

  for i in t_objects:

    t.join()

  time_end=time.time()

  sun=time_end-time_start

  print(sun)

  最后想要了解更多關(guān)于Python和人工智能方面內(nèi)容的小伙伴,請(qǐng)關(guān)注好程序員Python培訓(xùn)官網(wǎng)、微信公眾號(hào)等平臺(tái)。

好程序員公眾號(hào)

  • · 剖析行業(yè)發(fā)展趨勢(shì)
  • · 匯聚企業(yè)項(xiàng)目源碼

好程序員開(kāi)班動(dòng)態(tài)

More+
IT培訓(xùn)IT培訓(xùn)
在線咨詢
IT培訓(xùn)IT培訓(xùn)
試聽(tīng)
IT培訓(xùn)IT培訓(xùn)
入學(xué)教程
IT培訓(xùn)IT培訓(xùn)
立即報(bào)名
IT培訓(xùn)

Copyright 2011-2023 北京千鋒互聯(lián)科技有限公司 .All Right 京ICP備12003911號(hào)-5 京公網(wǎng)安備 11010802035720號(hào)