成人无码视频,亚洲精品久久久久av无码,午夜精品久久久久久毛片,亚洲 中文字幕 日韩 无码

資訊專欄INFORMATION COLUMN

Python線程專題3:thread對(duì)象

EdwardUp / 1974人閱讀

摘要:上一篇文章線程專題多線程共享全局變量下一篇文章線程專題對(duì)象對(duì)象對(duì)象對(duì)象類用于表示多帶帶的控制線程。線程啟動(dòng)時(shí)將調(diào)用此方法。阻塞線程,等待直到線程終止或者出現(xiàn)超時(shí)為止。當(dāng)不存在任何任何活動(dòng)的非后臺(tái)進(jìn)程時(shí),整個(gè)程序會(huì)退出。

上一篇文章:Python線程專題2:多線程共享全局變量
下一篇文章:Python線程專題4:Timer對(duì)象、Lock對(duì)象、Rlock對(duì)象
Thread對(duì)象

Thread類用于表示多帶帶的控制線程。

語法:
t=Thread(group=None,target=None,name=None,args=(),kwargs={})
創(chuàng)建一個(gè)新的Thread實(shí)例:t

group:為以后擴(kuò)張保留的,默認(rèn)為None

target:一個(gè)可調(diào)用對(duì)象,線程啟動(dòng)時(shí),run()方法將調(diào)用此對(duì)象

name:線程名稱,默認(rèn)創(chuàng)建一個(gè)“Thread-N”格式的唯一名稱。

args:傳遞給target函數(shù)的參數(shù)元祖

kwargs:傳遞給target的關(guān)機(jī)字參數(shù)的字典。
常用屬性于方法
t.start():通過在一個(gè)多帶帶的控制線程中調(diào)用run(),啟動(dòng)線程,此方法只能被調(diào)用一次。

t.run():線程啟動(dòng)時(shí)將調(diào)用此方法。默認(rèn)情況下,他會(huì)調(diào)用目標(biāo)函數(shù)target。還可以在Thread的子類中重新定義此方法。

t.join([timeout]):阻塞線程,等待直到線程終止或者出現(xiàn)超時(shí)為止。timeout是以秒為單位的超時(shí)時(shí)間。
線程啟動(dòng)之前不能調(diào)用此方法,否則會(huì)報(bào)錯(cuò)。

t.is_alive:如果線程是活動(dòng)的,返回True,否則返回False,從start()返回的那一刻開始,線程就是活動(dòng)的,
直到run()方法終止為止。

t.name:線程名稱,這個(gè)字符串用于唯一標(biāo)識(shí),可以根據(jù)需要將它更改為更有意義的值,

t.ident:整數(shù)線程標(biāo)識(shí)符,如果線程尚未啟動(dòng),它的值為None。

t.daemon:如果線程是后臺(tái)線程,該值為True,否則未False。當(dāng)不存在任何任何活動(dòng)的非后臺(tái)進(jìn)程時(shí),整個(gè)程序會(huì)退出。
實(shí)例1:利用Thread對(duì)象,簡(jiǎn)單創(chuàng)建一個(gè)線程,并啟動(dòng)一個(gè)函數(shù)
代碼:
#利用Thread對(duì)象,簡(jiǎn)單創(chuàng)建一個(gè)線程,并啟動(dòng)一個(gè)函數(shù)
from threading import Thread
import time
def mark(interval):
    print("循環(huán)等待時(shí)間時(shí)間%d,等待前時(shí)間:%s"%(interval,time.ctime()))
    time.sleep(interval)
    print("等待后的時(shí)間:%s"%time.ctime())

if __name__=="__main__":
    t=Thread(target=mark,args=(3,))
    t.daemon=False#設(shè)置為非后臺(tái)線程,不然會(huì)看不到自線程打印效果主線程就直接關(guān)閉了
    #下面一句會(huì)報(bào)錯(cuò),必須在start()方法之后調(diào)用
    #t.join(3)
    t.start()
    #下面語句也會(huì)報(bào)錯(cuò),因?yàn)閟tart只能調(diào)用一次
    #t.start()
    print("end")
結(jié)果:

實(shí)例2:通過繼承Thread,實(shí)現(xiàn)線程類

代碼:

#通過繼承Thread,實(shí)現(xiàn)線程類
from threading import Thread
import time

class MyThread(Thread):
    def __init__(self,interval):
        #下面語句用來調(diào)用基類方法,必須調(diào)用
        Thread.__init__(self)
        self.daemon=False
        self.interval=interval
    def run(self):
        print("循環(huán)等待時(shí)間時(shí)間%d,等待前時(shí)間:%s" % (self.interval, time.ctime()))
        time.sleep(self.interval)
        print("等待后的時(shí)間:%s" % time.ctime())

if __name__=="__main__":
    t=MyThread(3)
    t.start()
    #為了方便查看打印效果,加了一秒延遲
    time.sleep(1)
    print("end")

結(jié)果:

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://m.hztianpu.com/yun/42393.html

相關(guān)文章

  • Python線程專題2:多線程共享全局變量

    摘要:上一篇文章線程專題多線程使用的必要性下一篇文章線程專題對(duì)象在一個(gè)進(jìn)程內(nèi)的所有線程共享全局變量。但多線程對(duì)全局變量的更改會(huì)導(dǎo)致變量值得混亂。 上一篇文章: Python線程專題1:多線程使用的必要性下一篇文章:Python線程專題3:thread對(duì)象 在一個(gè)進(jìn)程內(nèi)的所有線程共享全局變量。但多線程對(duì)全局變量的更改會(huì)導(dǎo)致變量值得混亂。 實(shí)例:驗(yàn)證同一個(gè)進(jìn)程內(nèi)所有線程共享全局變量 代碼: #...

    Tangpj 評(píng)論0 收藏0
  • Python線程專題縱覽篇

    摘要:上一篇文章進(jìn)程專題完結(jié)篇多進(jìn)程處理的一般建議下一篇文章線程專題多線程使用的必要性進(jìn)程線程進(jìn)程能夠完成多任務(wù),比如在一個(gè)電腦上可以運(yùn)行多個(gè)軟件。由于占用資源少,也使得多線程程序并發(fā)比較高。 上一篇文章:Python進(jìn)程專題完結(jié)篇:多進(jìn)程處理的一般建議下一篇文章:Python線程專題1:多線程使用的必要性 進(jìn)程VS線程 進(jìn)程:能夠完成多任務(wù),比如在一個(gè)電腦上可以運(yùn)行多個(gè)軟件。線程:也能夠...

    張紅新 評(píng)論0 收藏0
  • Python線程專題4:Timer對(duì)象、Lock對(duì)象、Rlock對(duì)象

    摘要:語法創(chuàng)建定時(shí)器對(duì)象,在秒后運(yùn)行函數(shù),和提供傳遞給的參數(shù)和關(guān)鍵字參數(shù)。在調(diào)用方法后才能啟動(dòng)計(jì)定時(shí)器。如果函數(shù)還未執(zhí)行,取消定時(shí)器。否則,鎖將保持已鎖定狀態(tài)。 上一篇文章:Python線程專題3:thread對(duì)象下一篇文章:Python線程專題5:信號(hào)量與有邊界的信號(hào)量 Timer對(duì)象、Lock對(duì)象、Rlock對(duì)象 Timer對(duì)象 Timer對(duì)象用于在稍后的某個(gè)時(shí)間執(zhí)行一個(gè)函數(shù)。 語法:...

    Edison 評(píng)論0 收藏0
  • Python線程專題9:線程終止與掛起、實(shí)用工具函數(shù)

    摘要:上一篇文章線程專題使用鎖的注意事項(xiàng)下一篇文章線程專題多線程按順序執(zhí)行線程沒有任何方法可用于強(qiáng)制終止或掛起。實(shí)用工具函數(shù)函數(shù)名解釋返回當(dāng)前活動(dòng)的對(duì)象數(shù)量。 上一篇文章:Python線程專題8:使用鎖的注意事項(xiàng)下一篇文章:Python線程專題10:queue、多線程按順序執(zhí)行 線程沒有任何方法可用于強(qiáng)制終止或掛起。這是設(shè)計(jì)上的原因,因?yàn)榫帉懢€程程序本身十分復(fù)雜。例如:如果某個(gè)線程已經(jīng)獲取...

    dunizb 評(píng)論0 收藏0
  • Python線程專題5:信號(hào)量與有邊界的信號(hào)量

    摘要:有邊界的信號(hào)量語法創(chuàng)建一個(gè)新的有邊界信號(hào)量。是計(jì)數(shù)器的初始值,如果忽略,將默認(rèn)為信號(hào)量與有邊界的信號(hào)量的區(qū)別的工作方式與完全相同,但操作的次數(shù)不能超過的操作次數(shù)。信號(hào)量與互斥鎖的微妙差別信號(hào)量可用于發(fā)送信號(hào)。 上一篇文章:Python線程專題4:Timer對(duì)象、Lock對(duì)象、Rlock對(duì)象下一篇文章:Python線程專題6:事件 信號(hào)量與有邊界的信號(hào)量 信號(hào)量是一個(gè)基于計(jì)數(shù)器的同步原...

    Dionysus_go 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

閱讀需要支付1元查看
<