共用方式為


偵錯多執行緒應用程式

執行緒是作業系統配置處理器時間的指令序列。 在作業系統中執行的每個處理序都包含至少一個執行緒。 具有一個以上執行緒的處理序就稱為多執行緒。

具有多個處理器、多重核心處理器或超執行緒處理器的電腦,可以同時執行多個執行緒。 多個執行緒的平行處理可以大幅改進程式效能,但由於帶來了追蹤多個執行緒的需要,也可能會增加偵錯的困難度。

除此之外,多執行緒也帶來一些新類型的潛在錯誤。 舉例來說,常常有兩個以上的執行緒必須存取相同資源,但同時間只有一個執行緒能夠安全存取該資源。 所以某些形式的互斥是必要的,才能確保同時間只有一個執行緒在存取該資源。 如果執行互斥的方式不正確,就可能產生「死結」(Deadlock) 的情況,造成沒有執行緒能夠執行。 在偵錯時死結可能會是個特別難處理的問題。

Visual Studio 2010 提供改良的 [執行緒] 視窗和其他使用者介面改進方法,讓多執行緒的偵錯更加容易。認識新執行緒介面功能的最佳方式就是進行逐步解說。 請參閱逐步解說:偵錯多執行緒應用程式

Visual Studio 也提供強大的中斷點和追蹤點,這在您偵錯多執行緒應用程式時非常好用。 您可以使用中斷點篩選條件,將中斷點放置在個別執行緒上。 請參閱 HOW TO:指定中斷點篩選條件

偵錯具有使用者介面的多執行緒應用程式可能會特別地困難。 在這種情況下,您可以考慮在第二部電腦上執行該應用程式,並使用遠端偵錯。 如需詳細資訊,請參閱 遠端偵錯安裝

在本節中

相關章節

請參閱

其他資源

使用執行緒和處理序

遠端偵錯安裝