最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Python線程之多線程展示詳解

 更新時間:2021年12月15日 14:55:32   作者:雷學(xué)委  
這篇文章主要為大家介紹了Python線程之多線程展示,具有一定的參考價值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來幫助

什么多線程?

多線程,就是多個獨立的運(yùn)行單位,同時執(zhí)行同樣的事情。

想想一下,文章發(fā)布后同時被很多讀者閱讀,這些讀者在做的事情‘閱讀'就是一個一個的線程。
多線程就是多個讀者同時閱讀這篇文章。重點是:同時有多個讀者在做閱讀這件事情。

如果是多個讀者,分時間閱讀,最后任意時刻只有一個讀者在閱讀,雖然是多個讀者,但還是單線程。

我們再拿前面分享的代碼:關(guān)注和點贊。

def dianzan_guanzhu():
    now = datetime.datetime.now()
    name = "python萌新"
    print("%s name:%s" % (now, name))
    time.sleep(1)
    result = "好棒!" + name + " 關(guān)注雷學(xué)委,學(xué)會了開發(fā)知識!"
    print("%s result:%s" % (now, result))
    return result

我們看看下面的代碼:

#!/usr/bin/env python
# -*- coding: utf-8 -*-
# @Time : 2021/11/21 12:02 上午
# @Author : LeiXueWei
# @CSDN/Juejin/Wechat: 雷學(xué)委
# @XueWeiTag: CodingDemo
# @File : __init__.py.py
# @Project : hello
import threading
import datetime
import time
def dianzan_guanzhu():
    now = datetime.datetime.now()
    name = "python萌新"
    print("%s name:%s" % (now, name))
    time.sleep(1)
    result = "好棒!" + name + " 關(guān)注雷學(xué)委,學(xué)會了開發(fā)知識!"
    print("%s result:%s" % (now, result))
    return result
for i in range(3):
    mythread = threading.Thread(name="t-" + str(i), target=dianzan_guanzhu)
    print("mythread:", mythread)
    print("is_alive:", mythread.is_alive())
    mythread.start()
    print("is_alive:", mythread.is_alive())

Thread類可以傳入name指定線程名字。

直接復(fù)制運(yùn)行,這里我們創(chuàng)建了3個線程。

它們依次調(diào)用了dianzan_guanzhu函數(shù)

下面是運(yùn)行結(jié)果:

這3個線程不同時間打印完成了,但是內(nèi)容打印亂序了,甚至還串行了。

讀者同學(xué)可以多運(yùn)行幾次。

獲取活躍線程相關(guān)數(shù)據(jù)

  • threading.active_count函數(shù): 可以獲取活躍線程數(shù)。
  • threading.current_thread函數(shù):可以獲取活躍線程對象,這樣我們可以獲取這樣獲取線程名稱:threading.current_thread().getName()。

前文說過了,加上主線程,一共是4個線程。

運(yùn)行下面代碼看看:

#!/usr/bin/env python
# -*- coding: utf-8 -*-
# @Time : 2021/11/21 12:02 上午
# @Author : LeiXueWei
# @CSDN/Juejin/Wechat: 雷學(xué)委
# @XueWeiTag: CodingDemo
# @File : __init__.py.py
# @Project : hello
import random
import threading
import datetime
import time
def dianzan_guanzhu():
    thread_name = threading.current_thread().getName()
    now = datetime.datetime.now()
    print("線程啟動了:", thread_name)
    name = "python萌新"+thread_name
    print("%s - %s name:%s" % (thread_name, now, name))
    time.sleep(1)
    result = "好棒!" + name + " 關(guān)注雷學(xué)委,學(xué)會了開發(fā)知識!"
    print("%s - %s result:%s" % (thread_name, now, result))
    return result
for i in range(3):
    mythread = threading.Thread(name="t-" + str(i), target=dianzan_guanzhu)
    print("mythread:", mythread)
    print("is_alive:", mythread.is_alive())
    mythread.start()
    ac = threading.active_count()
    print("active_count:", ac)

如果我們把活躍線程數(shù)打印,那么等3個線程都start調(diào)用了。

加上主線程,最多是4個活躍線程。

今天先展示一下多個線程執(zhí)行同個任務(wù)的代碼實現(xiàn)。

總結(jié)

本篇文章就到這里了,希望能夠給你帶來幫助,也希望您能夠多多關(guān)注腳本之家的更多內(nèi)容!

相關(guān)文章

  • windows下python安裝小白入門教程

    windows下python安裝小白入門教程

    這篇文章主要為大家詳細(xì)介紹了windows下python安裝小白入門教程,文中安裝步驟介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2018-09-09
  • 如何在python中實現(xiàn)capl語言里的回調(diào)函數(shù)(推薦)

    如何在python中實現(xiàn)capl語言里的回調(diào)函數(shù)(推薦)

    CAPL是一種程序語言,其中程序塊的執(zhí)行由事件控制,主要介紹了如何在python中實現(xiàn)capl語言里的回調(diào)函數(shù)及事件函數(shù)的作用,需要的朋友可以參考下
    2022-08-08
  • 深入淺析Python獲取對象信息的函數(shù)type()、isinstance()、dir()

    深入淺析Python獲取對象信息的函數(shù)type()、isinstance()、dir()

    這篇文章主要介紹了Python獲取對象信息的函數(shù)type()、isinstance()、dir()的相關(guān)知識,非常不錯,具有一定的參考借鑒價值,需要的朋友可以參考下
    2018-09-09
  • Python創(chuàng)建類的方法及成員訪問的相關(guān)知識總結(jié)

    Python創(chuàng)建類的方法及成員訪問的相關(guān)知識總結(jié)

    今天給大家?guī)淼氖顷P(guān)于Python基礎(chǔ)的相關(guān)知識,文章圍繞著Python類的方法及成員訪問展開,文中有非常詳細(xì)的介紹及代碼示例,需要的朋友可以參考下
    2021-06-06
  • Python生成圖文并茂的PDF報告的方法詳解

    Python生成圖文并茂的PDF報告的方法詳解

    reportlab是Python的一個標(biāo)準(zhǔn)庫,可以畫圖、畫表格、編輯文字,最后可以輸出PDF格式。本文將利用reportlab模塊生成圖文并茂的PDF報告,感興趣的可以了解一下
    2022-06-06
  • Anaconda環(huán)境變量的配置圖文詳解

    Anaconda環(huán)境變量的配置圖文詳解

    Anaconda指的是一個開源的Python發(fā)行版本,其包含了conda、Python等180多個科學(xué)包及其依賴項,下面這篇文章主要給大家介紹了關(guān)于Anaconda環(huán)境變量配置的相關(guān)資料,文中通過實例代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2022-08-08
  • Python單元測試實例詳解

    Python單元測試實例詳解

    這篇文章主要介紹了Python單元測試,結(jié)合實例形式詳細(xì)分析了Python單元測試模塊的功能、使用方法及相關(guān)操作注意事項,需要的朋友可以參考下
    2018-05-05
  • python 字典修改鍵(key)的幾種方法

    python 字典修改鍵(key)的幾種方法

    這篇文章主要介紹了python 字典修改鍵(key)的幾種方法,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-08-08
  • 使用python os模塊復(fù)制文件到指定文件夾的方法

    使用python os模塊復(fù)制文件到指定文件夾的方法

    今天小編就為大家分享一篇使用python os模塊復(fù)制文件到指定文件夾的方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-08-08
  • Python實現(xiàn)npy/mat文件的保存與讀取

    Python實現(xiàn)npy/mat文件的保存與讀取

    除了常用的csv文件和excel文件之外,我們還可以通過Python把數(shù)據(jù)保存文npy文件格式和mat文件格式。本文為大家展示了實現(xiàn)npy文件與mat文件的保存與讀取的示例代碼,需要的可以參考一下
    2022-04-04

最新評論

汶川县| 泰宁县| 宁远县| 鸡西市| 仁化县| 中山市| 长泰县| 云安县| 盐津县| 沂源县| 岳西县| 五台县| 大安市| 蒲江县| 西峡县| 郓城县| 孙吴县| 山东| 汶上县| 佛冈县| 金川县| 蒲江县| 呼玛县| 桑植县| 大名县| 缙云县| 卫辉市| 红原县| 德安县| 图木舒克市| 云龙县| 通河县| 类乌齐县| 嵊州市| 鄂托克旗| 新干县| 关岭| 太仓市| 高台县| 谢通门县| 尉氏县|