編程基礎概念:進程與線程

===》點我返回目錄《===

對於操作系統而言,進程是整個系統的根本,操作系統是以進程爲單位執行任務。隨着技術發展,在執行一些細小任務,且本身無需分配單獨資源時,進程的實現機制依然會繁瑣的將資源分割,這樣造成浪費,而且還消耗時間,所以就有了專門的多任務技術被創造出來——線程。 線程的特點就是在不需要獨立資源的情況下就可以運行。如此一來會極大節省資源開銷,以及處理時間。

進程和線程的主要差別在於它們是不同的操作系統資源管理方式。進程有獨立的地址空間,而線程只是一個進程中的不同執行路徑。線程有自己的堆棧和局部變量,但線程之間沒有單獨的地址空間,所以多進程的程序要比多線程的程序健壯,但在進程切換時,耗費資源較大,效率要差一些。

簡單地說,進程是併發執行的程序在執行過程中分配和管理資源的基本單位。線程是進程的一個執行單元,是比進程還要小的獨立運行的基本單位。一個程序至少有一個進程,一個進程至少有一個線程。

Python支持多線程,示例:

class myThread (threading.Thread):

    def __init__(self, threadID, name):#構造方法

        threading.Thread.__init__(self)

        self.threadID = threadID

        self.name = name

    def run(self): #線程入口方法

        print ("開始線程:" + self.name)

thread1 = myThread(1, "Thread-1", 1) #創建一個線程

thread2 = myThread(2, "Thread-2", 2)#創建另一個線程

thread1.start()

thread2.start()

print ("退出主線程")

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章