===》點我返回目錄《===
對於操作系統而言,進程是整個系統的根本,操作系統是以進程爲單位執行任務。隨着技術發展,在執行一些細小任務,且本身無需分配單獨資源時,進程的實現機制依然會繁瑣的將資源分割,這樣造成浪費,而且還消耗時間,所以就有了專門的多任務技術被創造出來——線程。 線程的特點就是在不需要獨立資源的情況下就可以運行。如此一來會極大節省資源開銷,以及處理時間。
進程和線程的主要差別在於它們是不同的操作系統資源管理方式。進程有獨立的地址空間,而線程只是一個進程中的不同執行路徑。線程有自己的堆棧和局部變量,但線程之間沒有單獨的地址空間,所以多進程的程序要比多線程的程序健壯,但在進程切換時,耗費資源較大,效率要差一些。
簡單地說,進程是併發執行的程序在執行過程中分配和管理資源的基本單位。線程是進程的一個執行單元,是比進程還要小的獨立運行的基本單位。一個程序至少有一個進程,一個進程至少有一個線程。
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 ("退出主線程")