Thread(執行緒)
多執行緒類似於同時執行多個不同程式
多執行緒執行有如下優點:
1.使用執行緒可以把佔據長時間的程式中的任務放到後臺去處理。
2.使用者介面可以更加吸引人,這樣比如使用者點選了一個按鈕去觸發某些事件的處理,可以彈出一個進度條來顯示處理的進度
3.程式的執行速度可能加快
4.在一些等待的任務實現上如使用者輸入、檔案讀寫和網路收發資料等,執行緒就比較有用了。在這種情況下我們可以釋放一些珍貴的資源如記憶體佔用等等。
Python3 執行緒中常用的兩個模組為:
- _thread
- threading(推薦使用)
執行緒:程式中的每個子任務,不能獨立存在
程式:獨立的所有子任務的集合
執行緒,程式:目的都是想同時完成任務
執行緒的5種狀態:
建立,就緒,執行,阻塞,死亡
1.建立物件:建立
2.start():就緒
3.run():執行
4.:阻塞
5.:死亡
類執行緒例項:
import threading import time class MyThread(threading.Thread): def __init__(self,name): threading.Thread.__init__(self) self.name=name print("My Thread...") def run(self): for i in range(10): print(self.name,i) time.sleep(1) t=MyThread("th1") t2=MyThread("th2") t.start() t.join(3)#join()進來的執行緒先執行 t2.start()
執行緒例項:
import _thread import time # 為執行緒定義一個函式 '''def print_time( threadName, delay): count = 0 while count < 5: time.sleep(delay) count += 1 print ("%s: %s" % ( threadName, time.ctime(time.time()) )) # 建立兩個執行緒 try: _thread.start_new_thread( print_time, ("Thread-1", 2, ) ) _thread.start_new_thread( print_time, ("Thread-2", 4, ) ) except: print ("Error: 無法啟動執行緒") input('')''' def test(threadName): for i in range(20): print(threadName,i) _thread.start_new_thread(test,("th1",)) _thread.start_new_thread(test,("th2",)) input("")
相關文章
- kernel-執行緒thread執行緒thread
- Java 中的執行緒 threadJava執行緒thread
- Thread執行緒終止interruptthread執行緒
- new Thread與執行緒建立thread執行緒
- Java多執行緒/併發07、Thread.Join()讓呼叫執行緒等待子執行緒Java執行緒thread
- Java多執行緒(二):Thread類Java執行緒thread
- java多執行緒之Thread類Java執行緒thread
- Java多執行緒Thread類使用Java執行緒thread
- python 多執行緒之threadPython執行緒thread
- Swift多執行緒:使用Thread進行多執行緒間通訊,協調子執行緒任務Swift執行緒thread
- 多執行緒系列(二)之Thread類執行緒thread
- 【 Thread】建立執行緒的2種方法thread執行緒
- 一. 執行緒管理之Thread基礎執行緒thread
- Thread執行緒知識點講解thread執行緒
- thread 描述執行緒的一個類thread執行緒
- 【原創】Java多執行緒初學者指南(2):用Thread類建立執行緒Java執行緒thread
- java.lang.Thread中守護執行緒Javathread執行緒
- @Java | Thread & synchronized – [ 執行緒同步鎖 基本使用]Javathreadsynchronized執行緒
- Java多執行緒之Thread原始碼分析Java執行緒thread原始碼
- c# 執行緒Thread的IsBackground屬性C#執行緒thread
- [CareerCup] 16.1 Thread and Process 執行緒和程式thread執行緒
- JAVA多執行緒Thread VS Runnable詳解Java執行緒thread
- 關於核心執行緒(kernel_thread)(轉)執行緒thread
- Thread 中的 join() 方法的作用是呼叫執行緒等待該執行緒執行完後,再繼續執行thread執行緒
- [深入學習C#]C#實現多執行緒的方法:執行緒(Thread類)和執行緒池(ThreadPool)C#執行緒thread
- java 多執行緒(關於Thread的講解)Java執行緒thread
- 132.繼承Thread實現多執行緒繼承thread執行緒
- java執行緒系列---Runnable和Thread的區別Java執行緒thread
- Android執行緒管理之Thread使用總結Android執行緒thread
- java. 中 繼承Thread類建立執行緒.Java繼承thread執行緒
- 如何抓取Thread Dump(轉儲執行緒堆疊)thread執行緒
- 多執行緒設計模式之Worker Thread模式執行緒設計模式thread
- Java 多執行緒(Java.Thread)------ 執行緒協作(生產者消費者模式)Java執行緒thread模式
- python多執行緒之從Thread類繼承Python執行緒thread繼承
- Thread interrupt() 執行緒中斷的詳細說明thread執行緒
- 執行緒間通訊_等待/通知之Thread.join()執行緒thread
- 你知道Thread執行緒是如何運作的嗎?thread執行緒
- 日誌執行緒 redo thread(專業術語解析)執行緒thread