【python高併發】程序、執行緒的理解

txmmy發表於2024-06-25

出處:《Python高併發與高效能程式設計:原理與實踐》

程序

計算機的基礎運算單元,由作業系統核心管理

執行緒

  • 概念
    是計算機任務的執行者,作業系統執行排程的最小單位
  • 七種狀態
    建立、就緒、執行、中止、等待、阻塞、結束

舉個例子

一個python專案 -> 程序
啟動python專案 -> 建立解析Python的執行緒 和執行Python語言的工作執行緒
正常執行Python專案 -> 生成Python主執行緒和1+個工作執行緒

多程序

將同一個專案拆分成不同的專案來一起執行專案
多執行緒僅存在理論,實際實現起來有難度

多執行緒的弊端

  1. 執行緒上下文切換產生時間開銷:多執行緒為保證執行緒安全加了執行緒鎖,但對於臨界資源的競爭,一旦解鎖,執行緒之間就要等待獲取鎖,從而獲取資源。這個過程也需要耗費時間。

相關文章