1. 程式人生 > >Net學習日記_基礎提高_10

Net學習日記_基礎提高_10

主線程 star threading 一個 資源 es2017 log ges back

進程與線程

技術分享

一個進程只有一個線程(一般而言),進程就是在內存裏面開辟一塊空間,但不僅僅如此。線程去執行代碼。

進程裏面默認有個線程。

如何開啟一個線程?System.Threading;線程操作的類在這個命名空間下。

創建一個線程對象,並為這個線程對象指定要執行的方法。

private void TestThread(){ };

.......

Thread thread = new Thread(TestThread);

thread.Start();

前臺線程

進程裏面默認的線程,我們叫做主線程、UI線程。

線程默認(主線程、UI線程)情況下都是前臺線程。

要所有的前臺線程退出以後,程序才會退出。

線程什麽時候結束?該線程執行的方法執行完以後,線程就自動退出。

後臺線程

後臺線程只要所有的前臺線程結束,後臺線程就會立即結束。

thread.IsBackground = true; //後臺線程。

線程重入以及解決方法

1.微軟默認:線程之間是不能隨便訪問的。

TexBox.CheckForIllegalCrossThreadCalls = false;

關閉控件的跨線程訪問。

2.多個線程訪問同一資源,可能造成不同步的情況,這個叫做線程重入。

技術分享

技術分享

技術分享

技術分享

技術分享

技術分享

Net學習日記_基礎提高_10