程序和執行緒的概述,多執行緒和執行緒的意義

2020-10-03 11:00:17
1.想要了解多執行緒,必須先了解執行緒,而想了解執行緒,必須瞭解程序,因為執行緒是依賴於程序而儲存在的

2.什麼是程序?
     通過工作管理員我們就看見了程序的存在
     而通過觀察,我們發現只有執行的程式才會出現程序
     程序:就是正在運送的程式
               是系統進行資源分配和呼叫的獨立單位。
               每一個程序都有它自己的記憶體空間和系統資源

3.多程序有什麼意義?
         單程序的計算機只能做一件事情,而我們現在的計算機都可以進行多件事情:
         舉例:一邊遊戲(遊戲程序),一邊聽音樂(音樂程序)
         也就是說現在的計算機都是支援多程序的,就可以在一個時間段內執行多個任務
         並且,可以提高CPU的使用率

      
      問題:
       一邊玩遊戲,一邊聽音樂時同時進行的嗎?
       不是。因為單CPU在某一個時間點只能做一件事情
       而我們在玩遊戲,或者聽音樂,是CPU在做著程式間的高效切換讓我們覺的是同時進行的。
       
4.什麼是執行緒
     在一個程序內又可以執行多個任務,而每一個任務就們可以看成一個執行緒      
     執行緒:是程式的執行單元,執行路徑。是程式使用CPU的最基本單位
     單執行緒:如果程式只有一個執行路徑 。
     多執行緒:如果程式有多個執行路徑
      
5.多執行緒有什麼意義?
   多執行緒的存在,不是提高程式的執行速度。其實是為了提高應用程式的使用率
   程式的執行其實都是在搶CPU的資源,或著說是在強CPU的執行權
   多個程序是在搶這個資源,而其中的某一個程序如果執行緒比較多,就會有更大的機率搶到CPU的執行權
   我們不敢保證那一個執行緒能夠在那個時刻搶到,所以執行緒的執行有隨機性