欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

python進程與線程小結(jié)實例分析

 更新時間:2018年11月11日 13:08:19   作者:一個勤奮的程序員  
本文通過實例代碼分析了python進程與線程知識小結(jié),非常不錯,具有一定的參考借鑒價值,需要的朋友參考下吧

傳統(tǒng)方式是調(diào)用2個方法執(zhí)行1個任務,方法按順序依次執(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個線程同時并發(fā)執(zhí)行1個任務

# -*- 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()

自己寫一個類繼承繼承threading.Thread

# -*- coding:utf-8 -*-
import threading
import time
class MyThread(threading.Thread):
  def __init__(self,n):
    super(MyThread,self).__init__()
    self.n=n
  #這里面默認就有一個run方法
  def run(self):
    print('runing task',self.n)
if __name__ == '__main__':
  #在主方法通過對象調(diào)用線程
  t1=MyThread('t1')
  t2=MyThread('t2')
  t1.run()
  t2.run()

使用for循環(huán)啟動多個線程

# -*- 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()

等多線程同時執(zhí)行完后,再執(zhí)行其它代碼,因為線程是與其它代碼一起運行的

# -*- coding:utf-8 -*-
import threading
import time
def run(n):
  print('task',n)
  time.sleep(3)
if __name__ == '__main__':
  time_start=time.time()
  #定義一個空列表裝線程t實例
  t_objects=[]
  for i in range(10):
    t=threading.Thread(target=run,args=('t-%s'%i,))
    t.start()
    t_objects.append(t)
  # 等所有線程執(zhí)行完后,再執(zhí)行下面的代碼
  # 因為線程與下面的代碼是同時運行的
  # 要想先等線程執(zhí)行完畢再執(zhí)行其它代碼
  # 使用join()方法進行阻塞
  #在這里統(tǒng)一結(jié)束所有t線程
  for i in t_objects:
    t.join()
  time_end=time.time()
  sun=time_end-time_start
  print(sun)

總結(jié)

以上所述是小編給大家介紹的python進程與線程小結(jié)實例分析,希望對大家有所幫助,如果大家有任何疑問歡迎給我留言,小編會及時回復大家的!

相關(guān)文章

  • 分享個簡單易懂且非常有用的laravel事件

    分享個簡單易懂且非常有用的laravel事件

    這篇文章主要給大家介紹了一個簡單易懂并且非常有用的laravel事件,文中通過實例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面跟著小編來一起學習學習吧。
    2017-08-08
  • 一文帶你學會使用PHP接口

    一文帶你學會使用PHP接口

    PHP中的Interface是一種非常重要的特性,它允許開發(fā)人員定義一組規(guī)范或者約束,以確保類之間的互操作性和兼容性。在本文中,我們將詳細介紹PHP中的Interface的概念、定義、實現(xiàn)、使用、使用場景以及其它相關(guān)的一些知識點,需要的朋友可以參考下
    2023-04-04
  • ThinkPHP3.1.x修改成功與失敗跳轉(zhuǎn)頁面的方法

    ThinkPHP3.1.x修改成功與失敗跳轉(zhuǎn)頁面的方法

    這篇文章主要介紹了ThinkPHP3.1.x修改成功與失敗跳轉(zhuǎn)頁面的方法,涉及thinkPHP底層源文件中相關(guān)跳轉(zhuǎn)代碼的設置與修改操作技巧,需要的朋友可以參考下
    2017-09-09
  • ThinkPHP3.1新特性之多層MVC的支持

    ThinkPHP3.1新特性之多層MVC的支持

    默認的模型層由Model類構(gòu)成,但是隨著項目的增大和業(yè)務體系的復雜化,單一的模型層很難解決要求,從3.1開始推出了多層Model的支持。這篇文章主要介紹了ThinkPHP3.1多層MVC的支持,需要的朋友可以參考下
    2014-06-06
  • CentOS 上搭建 PHP7 開發(fā)測試環(huán)境

    CentOS 上搭建 PHP7 開發(fā)測試環(huán)境

    本文給大家分享的是作者在centos上搭建部署php7的開發(fā)測試環(huán)境的全部過程,非常的細致,有需要的小伙伴可以參考下
    2017-02-02
  • PHP+iframe圖片上傳實現(xiàn)即時刷新效果

    PHP+iframe圖片上傳實現(xiàn)即時刷新效果

    下面小編就為大家?guī)硪黄狿HP+iframe圖片上傳實現(xiàn)即時刷新效果。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2016-11-11
  • PHP使用第三方即時獲取物流動態(tài)實例詳解

    PHP使用第三方即時獲取物流動態(tài)實例詳解

    這篇文章主要介紹了PHP使用第三方即時獲取物流動態(tài),非常不錯,具有參考借鑒價值,需要的朋友可以參考下
    2017-04-04
  • 使用PHP+MySql實現(xiàn)微信投票功能實例代碼

    使用PHP+MySql實現(xiàn)微信投票功能實例代碼

    這篇文章主要介紹了使用PHP+MySql實現(xiàn)微信投票功能實例代碼,需要的朋友可以參考下
    2017-09-09
  • php正確輸出json數(shù)據(jù)的實例講解

    php正確輸出json數(shù)據(jù)的實例講解

    今天小編就為大家分享一篇php正確輸出json數(shù)據(jù)的實例講解,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-08-08
  • phpStudy配置多站點多域名和多端口的方法

    phpStudy配置多站點多域名和多端口的方法

    本篇文章主要介紹了phpStudy配置多站點多域名和多端口的方法,具有一定的參考價值,有興趣的可以了解一下
    2017-09-09

最新評論