麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 學院 > 開發設計 > 正文

線程系列01,前臺線程,后臺線程,線程同步

2019-11-17 02:52:54
字體:
來源:轉載
供稿:網友

線程系列01,前臺線程,后臺線程,線程同步

在控制臺應用程序集中,Main方法開始的是一個線程。如果要再創建線程,需要用到System.Threading這個命名空間。

□ 線程是怎樣工作的?

CLR維護著一個叫"thread scheduler"的機制,這個機制與操作系統交互。"thread scheduler"保證所有的線程有合適的執行時間,那些等待或被阻塞的線程不會占有CPU時間。在單處理器計算機上,"thread scheduler"在幾十毫秒的時間內切換當前線程的執行。在多處理器計算機上,"thread scheduler"一方面也會扮演在單處理器上的角色,此外,還會同時把不同的線程交給不同的CPU處理。值得注意的是:使用多線程并不是總是好的。

□ 線程和進程

一臺運行的電腦上可能會有多個進程,一個運行的進程可能會有多個線程。進程之間是完全隔離的,但在同一應用程序中不同線程可以共享數據。線程之間可以協同工作,比如一個后臺線程用來獲取數據,當獲取到數據之后,另一個線程用來顯示數據。

□ 多線程的應用場景

○ 保持一個更快響應的UI界面:讓UI線程只處理鼠標和鍵盤觸發事件,其它線程處理其它事件。○ 有效利用CPU:一個線程被阻塞,該線程就不會占有CPU資源。○ 并行編程:執行一個比較耗時的任務時,可以分攤給多個線程。○ 投機執行:讓一個有可能被執行的線程先提前執行;讓不同的線程用不同的算法,最先得出結果的勝出。○ 請求被同步處理:無論是在客戶端還是在服務端,可以用多線程同時處理多個并發請求。

□ 創建第一個線程

using System;
using System.Threading;
namespace Consoleapplication4
{
    class PRogram
    {
        static void Main(string[] args)
        {
            var thread = new Thread(DoSth);
            thread.Start();
        }
        static void DoSth()
        {
            Console.WriteLine("我來自另外一個線程");
        }
    }
}

實際上,new Thread(ThreadStart del)中的形參是委托類型:

public delegate void ThreadStart();

既然是委托,那在聲明委托的時候,同樣可以使用委托的構造函數:

var thread = new Thread(new ThreadStart (DoSth))

如果DoSth方法帶參數,可以這樣寫:

var thread = new Thread(new ParameterizedThreadStart(DoSth));

□ 前臺線程和后臺線程

新建的線程在默認情況下是前臺線程,可以通過把IsBackground屬性設置為true,把線程定義為后臺線程,一旦定義成后臺線程,只要前臺線程結束,無論后臺線程是否結束,應用程序進程結束。

using System;
using System.Threading;
namespace ConsoleApplication4
{
    class Program
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 亚洲国产成人久久成人52 | 日本在线播放一区二区三区 | 国产精品久久久网站 | 亚洲国产精品久久久久久久 | 欧美激情图区 | 国产盼盼私拍福利视频99 | 日本欧美一区二区三区在线观看 | 无码专区aaaaaa免费视频 | 国外成人在线视频 | 蜜桃视频在线免费播放 | 免费h片 | 久色视频网站 | 成人不卡免费视频 | 成人午夜在线观看视频 | 精品一区二区三区网站 | 免费观看一区二区三区视频 | 999久久久久久 | 日韩av电影在线观看 | 成人三级电影网站 | 国产精品久久久久久久久久10秀 | 一级免费特黄视频 | 一级毛片播放 | 免费亚洲视频在线观看 | 国产99一区二区 | 国产无遮挡一区二区三区毛片日本 | 99在线热播精品免费 | 久久久久久久久久久一区 | 猫咪av在线| hd性videos意大利复古 | 免费a级毛片大学生免费观看 | 最新一区二区三区 | 一区二区三区视频在线观看 | 欧美激情猛片xxxⅹ大3 | 成年免费观看视频 | 奇米888一区二区三区 | 少妇一级淫片免费看 | 亚洲操比视频 | 欧美韩国日本在线 | 手机av免费电影 | 一级片a | 一区二区三区视频在线观看 |