<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    Liver's Java
    我不夠貪心!其實我應該明白,心有多貪,舞臺就會有多大!堅持!奮斗!
    posts - 4,  comments - 6,  trackbacks - 0
    今天有同事問到線程的問題,自己突然就有點蒙了,只模糊的記得個大概。
    當初學習線程的時候把這7個狀態(tài)記得比自己名字還熟悉
    還把這7個狀態(tài)編成了一段凄慘而美麗的愛情故事
    沒想到如今卻只能記得個大概
    真驗證了“好記性不如爛筆頭”的真理
    還是趕快回憶一下吧

    先從圖片開始


    小小的作下解釋:
    1、線程的實現(xiàn)有兩種方式,一是繼承Thread類,二是實現(xiàn)Runnable接口,但不管怎樣,當我們new了這個對象后,線程就進入了初始狀態(tài)
    2、當該對象調用了start()方法,就進入可運行狀態(tài)
    3、進入可運行狀態(tài)后,當該對象被操作系統(tǒng)選中,獲得CPU時間片就會進入運行狀態(tài)
    4、進入運行狀態(tài)后情況就比較復雜了
        4.1、run()方法或main()方法結束后,線程就進入終止狀態(tài)
        4.2、當線程調用了自身的sleep()方法或其他線程的join()方法,就會進入阻塞狀態(tài)(該狀態(tài)既停止當前線程,但并不釋放所占有的資源)。當sleep()結束或join()結束后,該線程進入可運行狀態(tài),繼續(xù)等待OS分配時間片;
        4.3、線程調用了yield()方法,意思是放棄當前獲得的CPU時間片,回到可運行狀態(tài),這時與其他進程處于同等競爭狀態(tài),OS有可能會接著又讓這個進程進入運行狀態(tài);
       4.4、當線程剛進入可運行狀態(tài)(注意,還沒運行),發(fā)現(xiàn)將要調用的資源被synchroniza(同步),獲取不到鎖標記,將會立即進入鎖池狀態(tài),等待獲取鎖標記(這時的池里也許已經(jīng)有了其他線程在等待獲取標記,這時它們處于隊列狀態(tài),既先到先得),一旦線程獲得標記后,就轉入可運行狀態(tài),等待OS分配CPU時間片;
       4.5、當線程調用wait()方法后會進入等待隊列(進入這個狀態(tài)會釋放所占有的所有資源,與阻塞狀態(tài)不同),進入這個狀態(tài)后,是不能自動喚醒的,必須依靠其他線程調用notify()或notifyAll()方法才能被喚醒(由于notify()只是喚醒一個線程,但我們由不能確定具體喚醒的是哪一個線程,也許我們需要喚醒的線程不能夠被喚醒,因此在實際使用時,一般都用notifyAll()方法,喚醒有所線程),線程被喚醒后會進入鎖池,等待獲取鎖標記。

    總算全部回憶了一遍JDK1.5在API的使用上有了較好的改進,效率得到很大的提高,不過幾個狀態(tài)轉換的原理還是一樣。

    額……不過那一段凄慘而美麗的愛情故事還沒完全想起來,那天全部回憶起來了在寫吧。
    posted on 2009-06-04 00:06 Liver 閱讀(2192) 評論(2)  編輯  收藏 所屬分類: CoreJava

    FeedBack:
    # re: 線程7種狀態(tài)的相互轉換
    2009-06-26 12:08 | yjw
    好!  回復  更多評論
      
    # re: 線程7種狀態(tài)的相互轉換
    2013-03-19 17:15 | 11
    不錯不錯,分析的好。  回復  更多評論
      

    只有注冊用戶登錄后才能發(fā)表評論。


    網(wǎng)站導航:
     

    <2009年6月>
    31123456
    78910111213
    14151617181920
    21222324252627
    2829301234
    567891011

    常用鏈接

    留言簿

    隨筆分類(5)

    隨筆檔案(5)

    搜索

    •  

    最新評論

    閱讀排行榜

    評論排行榜

    主站蜘蛛池模板: 亚洲粉嫩美白在线| 亚洲国产日韩在线人成下载| 亚洲乱人伦中文字幕无码| 在线看片v免费观看视频777| 久久久久亚洲AV无码专区体验| 成人免费乱码大片A毛片| 国产精品V亚洲精品V日韩精品 | 四虎永久精品免费观看| 亚洲色偷偷综合亚洲av78 | 1000部啪啪未满十八勿入免费| 亚洲男人第一av网站| 99久久精品免费精品国产| 久久精品国产亚洲AV电影| 最近免费字幕中文大全视频 | 又粗又硬免费毛片| 十八禁的黄污污免费网站| 国产专区一va亚洲v天堂| 人妻免费一区二区三区最新| 久久亚洲精品国产精品黑人| 91免费播放人人爽人人快乐| 亚洲av日韩精品久久久久久a| 又黄又爽一线毛片免费观看 | 182tv免费观看在线视频| 亚洲Av无码一区二区二三区| 日本二区免费一片黄2019| 成人a毛片免费视频观看| 久久精品国产亚洲av四虎| 久草视频免费在线观看| 黄色一级视频免费| 亚洲av综合色区| 毛片免费在线观看网站| 日产久久强奸免费的看| 亚洲日本中文字幕区| 成人黄动漫画免费网站视频 | 一区二区三区观看免费中文视频在线播放 | 亚洲a∨国产av综合av下载| 亚洲精品国偷自产在线| 成人无码区免费A片视频WWW| 日韩免费在线中文字幕| 在线免费观看亚洲| 亚洲裸男gv网站|