中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

python線程里哪種模塊好

發布時間:2020-08-03 09:09:48 來源:億速云 閱讀:180 作者:小豬 欄目:開發技術

小編這次要給大家分享的是python線程里哪種模塊好,文章內容豐富,感興趣的小伙伴可以來了解一下,希望大家閱讀完這篇文章之后能夠有所收獲。

在Python中可使用的多線程模塊主要有兩個,thread和threading模塊。thread模塊提供了基本的線程和鎖的支持,建議新手不要使用。threading模塊允許創建和管理線程,提供了更多的同步原語。

thread模塊函數:

  • start_new_thread(function, args[, kwargs]):啟動新的線程以執行function,返回線程標識。
  • allocate_lock():返回LockType對象。
  • exit():拋出SystemExit異常,如果沒有被捕獲,線程靜默退出。
  • LockType類型鎖對象的方法:
  • acquire([waitflag]):無參數,無條件獲得鎖,如果鎖已經被其他線程獲取,則等待鎖被釋放。如果使用整型參數,參數為0,如果鎖可獲取,則獲取且返回True,否則返回False;參數為非0,與無參數相同。
  • locked():返回鎖的狀態,如果已經被獲取,則返回True,否則返回False。
  • release():釋放鎖。只有已經被獲取的鎖才能被釋放,不限于同一個線程。
  • threading模塊提供了更好的線程間的同步機制。threading模塊下有如下對象:
  • Thread
  • Lock
  • RLock
  • Condition
  • Event
  • Semaphore
  • BoundedSemaphore
  • Timer
  • threading模塊內還有如下的函數:
  • active_count()
  • activeCount():返回當前alive的線程數量
  • Condition():返回新的條件變量對象
  • current_thread()
  • currentThread():返回當前線程對象
  • enumerate():返回當前活動的線程,不包括已經結束和未開始的線程,包括主線程及守護線程。
  • settrace(func):為所有線程設置一個跟蹤函數。
  • setprofile(func):為所有純種設置一個profile函數。

內容擴展:

Python線程模塊

常用參數說明

  • target 表示調用對象,幾子線程要執行的的任務
  • name 子線程的名稱
  • args 傳入target函數中的位置參數,是一個元組,參數后必須加逗號

常用的方法

  • Thread.star(self)啟動進程
  • Thread.join(self)阻塞進程,主線程等待
  • Thread.setDaemon(self,daemoic) 將子線程設置為守護線程
  • Thread.getName(self.name) 獲取線程名稱
  • Thread.setName(self.name) 設置線程名稱
import time
from threading import Thread
 
 
def hello(name):
  print('hello {}'.format(name))
  time.sleep(3)
  print('hello bye')
 
def hi():
  print('hi')
  time.sleep(3)
  print('hi bye')
 
if __name__ == '__main__':
 
  hello_thread = Thread(target=hello, args=('wan zong',),name='helloname') #target表示調用對象。name是子線程的名稱。args 傳入target函數中的位置參數,是個元組,參數后必須加逗號
  hi_thread = Thread(target=hi)
 
  hello_thread.start() #開始執行線程任務,啟動進程
  hi_thread.start()
 
  hello_thread.join() #阻塞進程 等到進程運行完成 阻塞調用,主線程進行等待
  hi_thread.join()
 
  print(hello_thread.getName())
  print(hi_thread.getName()) #會默認匹配名字
 
  hi_thread.setName('hiname')
  print(hi_thread.getName())
 
  print('主線程運行完成!')

看完這篇關于python線程里哪種模塊好的文章,如果覺得文章內容寫得不錯的話,可以把它分享出去給更多人看到。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

云梦县| 溧水县| 塘沽区| 密山市| 白玉县| 柞水县| 房产| 黔南| 八宿县| 湘阴县| 沛县| 昆明市| 洞口县| 五莲县| 文成县| 行唐县| 大邑县| 桦川县| 中江县| 阿瓦提县| 淮北市| 肇庆市| 自贡市| 泽州县| 郎溪县| 孝昌县| 封开县| 紫金县| 巴塘县| 丹寨县| 枣阳市| 潜江市| 阳春市| 内江市| 义乌市| 安泽县| 收藏| 新野县| 肥东县| 新源县| 南阳市|