複製鏈接
請複製以下鏈接發送給好友

多執行緒架構

鎖定
PM的限制讓程式寫作者理解如何在圖形環境中執行的程式裏頭使用多個執行緒提供了必要的線索。因此在這裏我將為您的程式建議一種架構:您的主執行緒建立您程式所需要的所有視窗,並在其中包含所有的視窗訊息處理程式,以便處理這些視窗的所有訊息;所有其他執行緒只進行一些背景處理,除了和主執行緒通訊,它們不和使用者進行交流。
中文名
多執行緒架構
作    用
多個執行緒提供了必要的線索
特    點
每個執行緒還有各自的處理器狀態
優    點
建立您程式所需要的所有視窗
詳細解釋
可以把這種架構想像成:主執行緒處理使用者輸入(和其他訊息),並建立程序中的其他執行緒,這些附加的執行緒完成與使用者無關的工作。
換句話説,您程式的主執行緒是一個老闆,而您的其他執行緒是老闆的職員。老闆將大的工作丟給職員處理,而他自己保持和外界的聯繫。因為那些執行緒僅僅是職員,所以其他執行緒不會舉行它們自己的記者招待會。它們會認真地完成自己的工作,將結果報告給老闆,並等待他們的下一個任務。
一個程式中的執行緒是同一程序的不同部分,因此他們共用程序的資源,如記憶體和打開的檔案。因為執行緒共用程式的記憶體,所以他們還共用靜態變數。然而,每個執行緒都有他們自己的堆疊,因此動態變數對每個執行緒是唯一的。每個執行緒還有各自的處理器狀態(和數學輔助運算器狀態),這個狀態在進行執行緒切換期間被儲存和恢復。