您好,登錄后才能下訂單哦!
怎么在python中使用thread.local()實現實例化?相信很多沒有經驗的人對此束手無策,為此本文總結了問題出現的原因和解決方法,通過這篇文章希望你能解決這個問題。
Python主要應用于:1、Web開發;2、數據科學研究;3、網絡爬蟲;4、嵌入式應用開發;5、游戲開發;6、桌面應用開發。
1、說明
threading.local()實例化全局對象,該全局對象有大字典,鍵值為兩個弱引用對象{線程對象、字典對象},通過current_thread()獲取當前線程對象,并根據該對象獲取相應的字典對象。
2、實例
import threading import random data = threading.local() def show(d): try: num = d.num except AttributeError: print("線程 %s 還未設置該屬性!" % threading.current_thread().getName()) else: print("線程 %s 中該屬性的值為 = %s" % (threading.current_thread().getName(), num)) def thread_call(d): show(d) d.num = random.randint(1, 100) show(d) if __name__ == '__main__': show(data) data.num = 666 show(data) for i in range(2): t = threading.Thread(target=thread_call, args=(data,), name="Thread " + str(i)) t.start()
看完上述內容,你們掌握怎么在python中使用thread.local()實現實例化的方法了嗎?如果還想學到更多技能或想了解更多相關內容,歡迎關注億速云行業資訊頻道,感謝各位的閱讀!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。