多線程

          1.    多線程概念:
                 線程是指進(jìn)程中的一個(gè)執(zhí)行流程,一個(gè)進(jìn)程中可以運(yùn)行多個(gè)線程。比如java.exe進(jìn)程中可以運(yùn)行很多線程。線程總是屬于某個(gè)進(jìn)程,進(jìn)程中的多個(gè)線程共享進(jìn)程的內(nèi)存。
          •     多線程的實(shí)現(xiàn)方式和啟動(dòng)
          •     多線程是依靠什么方式解決資源競(jìng)爭(zhēng)
          •     多線程的各種狀態(tài)以及優(yōu)先級(jí)
          •     多線程的暫停方式
           2.    多線程詳解
                  1)多線程的實(shí)現(xiàn)方式和啟動(dòng):
          •       繼承Thread和是實(shí)現(xiàn)Runnable接口,重寫(xiě)run方法
          •       啟動(dòng)只有一種方式:通過(guò)start方法,虛擬機(jī)會(huì)調(diào)用run方法

                 2) 多線程依靠什么解決資源競(jìng)爭(zhēng)
          •        鎖機(jī)制:分為對(duì)象鎖和類(lèi)鎖,在多個(gè)線程調(diào)用的情況,每個(gè)對(duì)象鎖都是唯一的,只有獲取了鎖才能調(diào)用synchronized方法
          •        synchronize同步:分為同步方法和同步方法塊
          •        什么時(shí)候獲取鎖:每次調(diào)用到synchronize方法,這個(gè)時(shí)候去獲取鎖資源,如果線程獲取到鎖則別的線程只有等到同步方法介紹后,釋放鎖后,別的線程        才能繼續(xù)使用
                  3)線程的幾種狀態(tài)
          •        主要分為:新?tīng)顟B(tài)(還沒(méi)有調(diào)用start方法),可執(zhí)行狀態(tài)(調(diào)用start方法),阻塞狀態(tài),死亡狀態(tài)
                  默認(rèn)優(yōu)先級(jí)為normal(5),優(yōu)先級(jí)數(shù)值在1-10之間
           4) 多線程的暫停方式

          •     sleep:睡眠單位為毫秒
          •     wait,waitAll,notify,notifyAll,wait等待,只有通過(guò)wait或者waitAll喚醒
          •     yield:cpu暫時(shí)停用
          •     join

          posted on 2012-02-21 15:32 陳睿 閱讀(1429) 評(píng)論(0)  編輯  收藏 所屬分類(lèi): 高級(jí)

          導(dǎo)航

          <2012年2月>
          2930311234
          567891011
          12131415161718
          19202122232425
          26272829123
          45678910

          統(tǒng)計(jì)

          常用鏈接

          留言簿

          隨筆分類(lèi)

          隨筆檔案

          搜索

          最新評(píng)論

          閱讀排行榜

          評(píng)論排行榜

          主站蜘蛛池模板: 阳江市| 江安县| 普安县| 拉孜县| 丰原市| 沈丘县| 甘泉县| 毕节市| 宜兰市| 安塞县| 庄浪县| 新干县| 五莲县| 嵊州市| 古蔺县| 宁乡县| 红安县| 禹城市| 侯马市| 亚东县| 镇平县| 定兴县| 固原市| 新泰市| 富民县| 孟津县| 科尔| 泸溪县| 鹤岗市| 双江| 高邮市| 祥云县| 五峰| 集贤县| 崇仁县| 景洪市| 旬邑县| 紫金县| 潜江市| 双鸭山市| 咸丰县|