亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

python線程鎖(thread)學(xué)習(xí)示例

 更新時(shí)間:2013年12月04日 15:30:56   作者:  
python thread提供了低級別的、原始的線程以及一個(gè)簡單的鎖,下面提供一個(gè)python線程線程鎖(thread)學(xué)習(xí)示例,大家參考使用

復(fù)制代碼 代碼如下:

# encoding: UTF-8
import thread
import time

# 一個(gè)用于在線程中執(zhí)行的函數(shù)
def func():
    for i in range(5):
        print 'func'
        time.sleep(1)

    # 結(jié)束當(dāng)前線程
    # 這個(gè)方法與thread.exit_thread()等價(jià)
    thread.exit() # 當(dāng)func返回時(shí),線程同樣會結(jié)束

# 啟動一個(gè)線程,線程立即開始運(yùn)行
# 這個(gè)方法與thread.start_new_thread()等價(jià)
# 第一個(gè)參數(shù)是方法,第二個(gè)參數(shù)是方法的參數(shù)
thread.start_new(func, ()) # 方法沒有參數(shù)時(shí)需要傳入空tuple

# 創(chuàng)建一個(gè)鎖(LockType,不能直接實(shí)例化)
# 這個(gè)方法與thread.allocate_lock()等價(jià)
lock = thread.allocate()

# 判斷鎖是鎖定狀態(tài)還是釋放狀態(tài)
print lock.locked()

# 鎖通常用于控制對共享資源的訪問
count = 0

# 獲得鎖,成功獲得鎖定后返回True
# 可選的timeout參數(shù)不填時(shí)將一直阻塞直到獲得鎖定
# 否則超時(shí)后將返回False
if lock.acquire():
    count += 1

    # 釋放鎖
    lock.release()

# thread模塊提供的線程都將在主線程結(jié)束后同時(shí)結(jié)束
time.sleep(6)

thread 模塊提供的其他方法:
thread.interrupt_main(): 在其他線程中終止主線程。
thread.get_ident(): 獲得一個(gè)代表當(dāng)前線程的魔法數(shù)字,常用于從一個(gè)字典中獲得線程相關(guān)的數(shù)據(jù)。這個(gè)數(shù)字本身沒有任何含義,并且當(dāng)線程結(jié)束后會被新線程復(fù)用。

thread還提供了一個(gè)ThreadLocal類用于管理線程相關(guān)的數(shù)據(jù),名為 thread._local,threading中引用了這個(gè)類。

相關(guān)文章

  • 關(guān)于python爬蟲的原理解析

    關(guān)于python爬蟲的原理解析

    這篇文章主要介紹了python爬蟲原理,今天我們要向大家詳細(xì)解說python爬蟲原理,什么是python爬蟲,python爬蟲工作的基本流程是什么等內(nèi)容,希望對這正在進(jìn)行python爬蟲學(xué)習(xí)的同學(xué)有所幫助
    2023-07-07
  • 利用django model save方法對未更改的字段依然進(jìn)行了保存

    利用django model save方法對未更改的字段依然進(jìn)行了保存

    這篇文章主要介紹了利用django model save方法對未更改的字段依然進(jìn)行了保存,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-03-03
  • Pycharm2017版本設(shè)置啟動時(shí)默認(rèn)自動打開項(xiàng)目的方法

    Pycharm2017版本設(shè)置啟動時(shí)默認(rèn)自動打開項(xiàng)目的方法

    今天小編就為大家分享一篇Pycharm2017版本設(shè)置啟動時(shí)默認(rèn)自動打開項(xiàng)目的方法,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-10-10
  • python中的3種定義類方法

    python中的3種定義類方法

    這篇文章主要給大家分享得是 python中的3種定義類方法,分別是普通方法、類方法(@classmethod)以及類方法(@classmethod),想了解方法具體實(shí)現(xiàn)的小伙伴可以參考下面文章內(nèi)容哦,希望對你有所幫助
    2021-11-11
  • python逆向入門教程

    python逆向入門教程

    這篇文章主要介紹了python逆向入門教程,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2018-01-01
  • Python實(shí)現(xiàn)的使用telnet登陸聊天室實(shí)例

    Python實(shí)現(xiàn)的使用telnet登陸聊天室實(shí)例

    這篇文章主要介紹了Python實(shí)現(xiàn)的使用telnet登陸聊天室,以實(shí)例形式較為詳細(xì)的分析了Python實(shí)現(xiàn)聊天室及Telnet登陸的相關(guān)技巧,需要的朋友可以參考下
    2015-06-06
  • python創(chuàng)建學(xué)生成績管理系統(tǒng)

    python創(chuàng)建學(xué)生成績管理系統(tǒng)

    這篇文章主要為大家詳細(xì)介紹了python創(chuàng)建學(xué)生成績管理系統(tǒng),文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2019-11-11
  • python處理xml文件的方法小結(jié)

    python處理xml文件的方法小結(jié)

    這篇文章主要介紹了python處理xml文件的方法,結(jié)合實(shí)例形式總結(jié)分析了Python常見的xml文件處理技巧與相關(guān)注意事項(xiàng),需要的朋友可以參考下
    2017-05-05
  • pytest解讀fixtures之Teardown處理yield和addfinalizer方案

    pytest解讀fixtures之Teardown處理yield和addfinalizer方案

    這篇文章主要為大家介紹了pytest解讀fixtures之Teardown處理yield和addfinalizer的方案實(shí)例,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2022-06-06
  • Python 數(shù)據(jù)分析之逐塊讀取文本的實(shí)現(xiàn)

    Python 數(shù)據(jù)分析之逐塊讀取文本的實(shí)現(xiàn)

    這篇文章主要介紹了Python 數(shù)據(jù)分析之逐塊讀取文本的實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-12-12

最新評論