1.  線程池


    • 創(chuàng)建線程和銷毀線程是一個(gè)昂貴的操作,要耗費(fèi)大量的時(shí)間。由于操作系統(tǒng)必須調(diào)度可運(yùn)行的線程并執(zhí)行上線文切換,所以太多的線程還對(duì)性能不利。

      為了改善這個(gè)情況,clr包含了代碼來(lái)管理他自己的線程池。

      線程池是你的應(yīng)用程序能使用的線程集合。

      線程池內(nèi)部會(huì)維護(hù)一個(gè) 操作請(qǐng)求隊(duì)列。應(yīng)用程序執(zhí)行一個(gè)異步請(qǐng)求操作時(shí),將一個(gè)記錄項(xiàng)(entry)追加到線程池的隊(duì)列中。線程池的代碼從這個(gè)對(duì)立中

      提取記錄項(xiàng),將這個(gè)記錄項(xiàng)派發(fā)(dispatch)給一個(gè)線程池線程。

      當(dāng)線程池完成任務(wù)后,線程不會(huì)被銷毀。相反,線程會(huì)回到線程池,在哪里進(jìn)入空閑狀態(tài),等待相應(yīng)另一個(gè)請(qǐng)求。由于線程不銷毀自身,所以不在再產(chǎn)生額Android培訓(xùn),安卓培訓(xùn),手機(jī)開(kāi)發(fā)培訓(xùn),移動(dòng)開(kāi)發(fā)培訓(xùn),云培訓(xùn)培訓(xùn)外的性能損失;

    • Android培訓(xùn),安卓培訓(xùn),手機(jī)開(kāi)發(fā)培訓(xùn),移動(dòng)開(kāi)發(fā)培訓(xùn),云培訓(xùn)培訓(xùn)

    1. 線程池基礎(chǔ)

    2. 我們來(lái)演示以線程池的方式異步的調(diào)用一個(gè)方法 

      Android培訓(xùn),安卓培訓(xùn),手機(jī)開(kāi)發(fā)培訓(xùn),移動(dòng)開(kāi)發(fā)培訓(xùn),云培訓(xùn)培訓(xùn)

      public static void MainThreadPool()
              {
                  Console.WriteLine("主線程異步操作隊(duì)列");
                  ThreadPool.QueueUserWorkItem(ThreadProc);
      
                  Console.WriteLine("主線程做其他工作");
             &nb