欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

使用.Net實現(xiàn)多線程經(jīng)驗總結(jié)

 更新時間:2014年12月15日 11:04:19   投稿:hebedich  
這篇文章主要介紹了使用.Net實現(xiàn)多線程經(jīng)驗總結(jié),需要的朋友可以參考下

1.簡述

  一般一個程序一個進(jìn)程,代碼是存在進(jìn)程中的,進(jìn)程本身不執(zhí)行代碼, 執(zhí)行代碼的是線程。

  一般一個進(jìn)程里就一個線程。(一個商店就一個老板娘。)

  進(jìn)程就是在內(nèi)存中開辟了一個空間。代碼,圖片。。等就存在這個空間里。代碼線程去執(zhí)行。

  默認(rèn)只有一個線程。

復(fù)制代碼 代碼如下:

systerm.threading //線程操作的類在這個命名空間下。

2.前臺線程與后臺線程。

  開啟一個線程,就是創(chuàng)建一個線程對象即可。

  線程默認(rèn)情況下都是前臺線程。

  要把所有的前臺線程執(zhí)行完后,程序才會退出。

  進(jìn)程里默認(rèn)的線程叫主線程或者默認(rèn)線程,或UI線程。

  后臺線程,只要所有的前臺線程結(jié)束,所有的后臺線程就直接結(jié)束。

復(fù)制代碼 代碼如下:

Thread th = new Thread(Sum);
th.Name ="線程1";    給線程取名。調(diào)試的時候可以在輸出中看到具體名稱。
th.IsBackground = true;  
th.Start(); 
th.Abort();   強(qiáng)行終止線程。
Thread.Sleep(1000);  暫停線程,單位是毫秒
Thread cuTh = Thread.CurrentThread  得到當(dāng)前線程的引用。Thread類型。
TextBox.CheckForIllegalCrossThreadCalls = false; //關(guān)閉空間的跨線程訪問檢查。 否則會出現(xiàn)如下錯誤

 

3.線程重入

  同一個進(jìn)程中的多個線程之間可以“并發(fā)”執(zhí)行。

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

  應(yīng)對此情況,可加鎖處理。

復(fù)制代碼 代碼如下:

private void CountNum()
        {
            lock (this)
            {
                for (int i = 0; i < 10000; i++)
                {
                    int num = int.Parse(textBox1.Text.Trim());
                    num++;
                    textBox1.Text = num.ToString();
                }
            }
        }

4.線程對象本質(zhì)(委托) 

4.1 無參方法     

需要傳一個委托對象。

復(fù)制代碼 代碼如下:
ThreadStart ts = new ThreadStart(CountNum); Thread th = new Thread(ts); 等價于 Thread th = new Thread(CountNum); 本質(zhì)傳的是一個委托對象。 (CountNum是無參方法)
4.2 有參方法

  如果需要傳有參方法。

  則是創(chuàng)建的ParameterizedThreadStart 的委托對象。

  傳參是在Start方法中傳入;start方法有兩個重載。

小伙伴們是否對.net中使用多線程有所了解了呢,如有疑問,請留言。

相關(guān)文章

  • 關(guān)于.NET異常處理的思考總結(jié)

    關(guān)于.NET異常處理的思考總結(jié)

    這篇文章主要介紹了關(guān)于.NET異常處理的思考總結(jié),具有一定的參考價值,感興趣的小伙伴們可以參考一下。
    2016-12-12
  • asp.net 動態(tài)表單之?dāng)?shù)據(jù)分頁

    asp.net 動態(tài)表單之?dāng)?shù)據(jù)分頁

    我們很常會在項目中提到一個動態(tài)表單的概念,比如學(xué)校里面學(xué)生的考試成績,當(dāng)學(xué)生登錄系統(tǒng)的時候,他當(dāng)然是希望看到他自己所有科目的成績;又或者是班主任,他需要看到本班同學(xué)所有科目的成績;這些時候我們一般都會在頁面中呈現(xiàn)如下的效果。
    2010-03-03
  • 如何實現(xiàn)ListView高效分頁代碼

    如何實現(xiàn)ListView高效分頁代碼

    ListView選擇自動分頁時 其實就是添加了一個DataPager分頁控件兩者間存在著嵌套關(guān)系《Repeater與ListView》中提到這樣的分頁并不是高效的 因為數(shù)據(jù)源還是返回了所有的數(shù)據(jù) 而非當(dāng)前頁數(shù)據(jù)
    2013-02-02
  • 關(guān)于dotnet?替換?ASP.NET?Core?的底層通訊為命名管道的?IPC?庫的問題

    關(guān)于dotnet?替換?ASP.NET?Core?的底層通訊為命名管道的?IPC?庫的問題

    這篇文章主要介紹了dotnet?替換?ASP.NET?Core?的底層通訊為命名管道的?IPC?庫,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2022-02-02
  • .net MVC中使用forms驗證詳解

    .net MVC中使用forms驗證詳解

    這篇文章主要為大家詳細(xì)介紹了.net MVC中使用forms驗證的相關(guān)資料,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-05-05
  • .Net實現(xiàn)延遲隊列

    .Net實現(xiàn)延遲隊列

    這篇文章介紹了.Net實現(xiàn)延遲隊列的方法,文中通過示例代碼介紹的非常詳細(xì)。對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2022-07-07
  • asp.net 多數(shù)據(jù)庫支持的思考

    asp.net 多數(shù)據(jù)庫支持的思考

    最近一直在思考如何做一個支持多種數(shù)據(jù)庫的程序,打印了很多的資料,在.NET 2.0中,新增加了DbProviderFactory抽象工廠類,讓數(shù)據(jù)層基類可以實現(xiàn)多種數(shù)據(jù)庫,但在數(shù)據(jù)訪問層中的參數(shù)部分我覺得是個麻煩。
    2009-07-07
  • GridView控件實現(xiàn)數(shù)據(jù)的顯示和刪除(第8節(jié))

    GridView控件實現(xiàn)數(shù)據(jù)的顯示和刪除(第8節(jié))

    這篇文章主要介紹了GridView控件實現(xiàn)數(shù)據(jù)的顯示和刪除,以新聞網(wǎng)站為例,實現(xiàn)對新聞數(shù)據(jù)的操作,了解各種數(shù)據(jù)源控件與數(shù)據(jù)綁定控件的類型和作用,需要的朋友可以參考下
    2015-08-08
  • ASP.NET數(shù)據(jù)庫操作類實例

    ASP.NET數(shù)據(jù)庫操作類實例

    這篇文章主要介紹了ASP.NET數(shù)據(jù)庫操作類,結(jié)合實例形式分析了asp.net基本的數(shù)據(jù)庫增刪改查操作封裝相關(guān)技巧,需要的朋友可以參考下
    2017-03-03
  • Asp.net MVC利用knockoutjs實現(xiàn)登陸并記錄用戶的內(nèi)外網(wǎng)IP及所在城市(推薦)

    Asp.net MVC利用knockoutjs實現(xiàn)登陸并記錄用戶的內(nèi)外網(wǎng)IP及所在城市(推薦)

    這篇文章主要介紹了 Asp.net MVC利用knockoutjs實現(xiàn)登陸并記錄用戶的內(nèi)外網(wǎng)IP及所在城市(推薦),需要的朋友可以參考下
    2017-02-02

最新評論