1. 程式人生 > >為什麼執行緒會放棄Suspend和Resume方法

為什麼執行緒會放棄Suspend和Resume方法

記錄一下,多久沒看youku了哦,有鬥魚,有樂視,還有翻牆,真的很久沒開啟優酷了
這裡寫圖片描述

百度一下,
說什麼
“suspend()方法就是將一個執行緒掛起(暫停),resume()方法就是將一個掛起執行緒復活繼續執行”
你傻啊,中文誰不知道,但是你用的時候提示depecated,
有橫線,知道不?
這裡寫圖片描述
又或者發英文
《Why thead depecated suspend, resume》
會英文了不起啊
你看完有結論沒?
沒有你知道轉帖浪費別人時間
浪費時間就是浪費生命啊
程式設計師的生命就是查百度嘛
所以沒有浪費是吧
把轉帖的英文看了個遍,沒看出什麼來
就知道sychonize和interrupt
也就是suspend不能用


有人說dep也是能用啦,不用擔心
那你用用看吧
要真能用,網上就不會那麼多文章提到interrupted,(如果真有re-interrupted,如suspend和resume是一對,執行緒能終止就能啟動,那就不用dep了,所以interrupted的機制肯定和我們理解的不一樣)
還不信?

    t1 = new Thread(new Runnable() {    
        @Override
        public void run() {
            while(true){

                try {
                    Thread.sleep(1000
); Log.e(TAG,"sleep 1 sec"); } catch (InterruptedException e) { // TODO Auto-generated catch block e.printStackTrace(); break; } } } }); t1.start();
    t1.suspend();//如果執行緒還在Sleep,直接報錯,執行緒直接死掉

這裡寫圖片描述

估計其他不確定因素也會造成執行緒死掉,

所以

結論是

suspend和resume就是廢的。