python多线程怎么写_怎么样优雅的使用python多线程?python进阶
Python多線程類似于同時執行多個不同程序,但其執行過程中和進程還是有區別的,每個獨立的線程有一個程序運行的入口、順序執行序列和程序的出口,但是線程不能夠獨立執行,必須依存在應用程序中,由應用程序提供多個線程執行控制。
Python多線程優點
1. 使用線程可以把占據長時間的程序中的任務放到后臺去處理;
2. 用戶界面可以更加吸引人,這樣比如用戶點擊了一個按鈕去觸發某些事件的處理,可以彈出一個進度條來顯示處理的進度;
3. 程序的運行速度可能加快;
4. 在一些等待的任務實現上如用戶輸入、文件讀寫和網絡收發數據等,線程就比較有用了。在這種情況下我們可以釋放一些珍貴的資源如內存占用等等。
Python多線程使用方法
Python中使用線程有兩種方式,分別是函數或者用類來包裝線程對象。
用函數來包裝線程對象的方式
用函數來包裝線程對象的方式是調用thread模塊中的start_new_thread()函數來產生新線程,線程的結束一般依靠線程函數的自然結束,也可以在線程函數中調用thread.exit()以達到退出線程的目的。具體語法如下:
thread.start_new_thread ( function, args[, kwargs] )
參數說明:
function - 線程函數;
args - 傳遞給線程函數的參數,他必須是個tuple類型;
kwargs - 可選參數。
用類來包裝線程對象的方法
除了調用thread模塊來產生新線程外,還可以采用Thread類來處理線程,Thread類提供的方法有:
run(): 用以表示線程活動的方法;
start():啟動線程活動;
join([time]): 等待至線程中止。這阻塞調用線程直至線程的join()
方法被調用中止-正常退出或者拋出未處理的異常-或者是可選的超時發生;
isAlive(): 返回線程是否活動的;
getName(): 返回線程名;
setName(): 設置線程名。
除了使用以上兩種方法外,還可以使用Threading模塊創建線程,直接從threading.Thread繼承,然后重寫__init__方法和run方法,有興趣的可以進一步了解具體用法!
與50位技術專家面對面20年技術見證,附贈技術全景圖總結
以上是生活随笔為你收集整理的python多线程怎么写_怎么样优雅的使用python多线程?python进阶的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: hive能替代oracle_173-Hi
- 下一篇: python红色_python把红玫瑰变