javase之并發(fā)(1)

開始重新學(xué)習(xí)并發(fā)岸浑,雖然以前也沒怎么好好學(xué)........準(zhǔn)備看java核心技術(shù)卷一來自學(xué)

so,首先侣夷,需要了解多線程和多進(jìn)程之間的區(qū)別最仑,多進(jìn)程的進(jìn)程數(shù)目并不由CPU數(shù)目制約缴渊,而是操作系統(tǒng)將CPU的時間分配給進(jìn)程赏壹,

多線程則在較低的層次上擴(kuò)展了多任務(wù)的概念,一個程序可以同時處理多個任務(wù)衔沼,則每個任務(wù)為一條線程蝌借。

進(jìn)程和線程的本質(zhì)區(qū)別:每個進(jìn)程擁有自己的一整套變量,而線程則共享數(shù)據(jù)

同時指蚁,線程更輕量級菩佑,創(chuàng)建,撤銷一個線程比啟動新進(jìn)程的開銷小很多

1.認(rèn)識Thread

1.1 Thread實現(xiàn)了Runnable接口

Runnable

@FunctionalInterface
public interface Runnable {
    /**
     * When an object implementing interface <code>Runnable</code> is used
     * to create a thread, starting the thread causes the object's
     * <code>run</code> method to be called in that separately executing
     * thread.
     * <p>
     * The general contract of the method <code>run</code> is that it may
     * take any action whatsoever.
     *
     * @see     java.lang.Thread#run()
     */
    public abstract void run();
}

Runnable很簡單凝化,只有一個函數(shù)run()稍坯,是一個函數(shù)式接口
Thread的構(gòu)造方法

Thread() 
分配新的 Thread 對象。
Thread(Runnable target) 
分配新的 Thread 對象搓劫。
Thread(Runnable target, String name) 
分配新的 Thread 對象瞧哟。
Thread(String name) 
分配新的 Thread 對象。
Thread(ThreadGroup group, Runnable target) 
分配新的 Thread 對象枪向。
Thread(ThreadGroup group, Runnable target, String name) 
分配新的 Thread 對象勤揩,以便將 target 作為其運行對象,將指定的 name 作為其名稱秘蛔,并作為 group 所引用的線程組的一員陨亡。
Thread(ThreadGroup group, Runnable target, String name, long stackSize)
分配新的 Thread 對象,以便將 target 作為其運行對象深员,將指定的 name 作為其名稱数苫,作為 group 所引用的線程組的一員,并具有指定的堆棧大小辨液。
Thread(ThreadGroup group, String name) 
分配新的 Thread 對象虐急。

emmm,我就用過前兩個,監(jiān)介

接下來是Thread的常見方法

static void sleep(long millis)

void start()

void run()

static void yield()
暫停該線程滔迈,并執(zhí)行其他線程
void join()
等待該線程終止

public final boolean isDaemon()

void interrupt()
向線程發(fā)送中斷請求止吁,線程的中斷狀態(tài)被設(shè)置為true被辑,若當(dāng)前線程被一個sleep調(diào)用阻塞,那么會拋出異常

static boolean interrupted()

boolean isInterrupted()

static Thread currentThread()

Thread.State getState()

2.線程狀態(tài)

  • New(新創(chuàng)建敬惦,但還未運行盼理,new Thread())
  • Ruunable(調(diào)用了start()方法,一個可運行的線程可能在運行也可能沒在運行俄删,取決于操作系統(tǒng)給線程提供的運行時間)
  • Blocked(當(dāng)一個線程試圖調(diào)用一個內(nèi)部的對象鎖宏怔,而該鎖被其他線程持有,則該線程進(jìn)入阻塞狀態(tài))
  • Waiting(當(dāng)線程調(diào)用sleep()或wait()畴椰,或者等待concurrent庫中的Lock或Condition時臊诊,就會進(jìn)入等待狀態(tài))
  • Timed Waiting(當(dāng)?shù)却隣顟B(tài)有一個超時參數(shù)時,就是計時等待狀態(tài))
    *Terminated(1.run()方法正常退出 , 2.因為一個沒有捕獲的異常終止了run()方法)
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末斜脂,一起剝皮案震驚了整個濱河市抓艳,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌帚戳,老刑警劉巖玷或,帶你破解...
    沈念sama閱讀 211,042評論 6 490
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異片任,居然都是意外死亡偏友,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 89,996評論 2 384
  • 文/潘曉璐 我一進(jìn)店門对供,熙熙樓的掌柜王于貴愁眉苦臉地迎上來约谈,“玉大人,你說我怎么就攤上這事犁钟±庥眨” “怎么了?”我有些...
    開封第一講書人閱讀 156,674評論 0 345
  • 文/不壞的土叔 我叫張陵涝动,是天一觀的道長迈勋。 經(jīng)常有香客問我,道長醋粟,這世上最難降的妖魔是什么靡菇? 我笑而不...
    開封第一講書人閱讀 56,340評論 1 283
  • 正文 為了忘掉前任,我火速辦了婚禮米愿,結(jié)果婚禮上厦凤,老公的妹妹穿的比我還像新娘。我一直安慰自己育苟,他們只是感情好较鼓,可當(dāng)我...
    茶點故事閱讀 65,404評論 5 384
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著,像睡著了一般博烂。 火紅的嫁衣襯著肌膚如雪香椎。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 49,749評論 1 289
  • 那天禽篱,我揣著相機(jī)與錄音畜伐,去河邊找鬼。 笑死躺率,一個胖子當(dāng)著我的面吹牛玛界,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播悼吱,決...
    沈念sama閱讀 38,902評論 3 405
  • 文/蒼蘭香墨 我猛地睜開眼慎框,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了舆绎?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 37,662評論 0 266
  • 序言:老撾萬榮一對情侶失蹤们颜,失蹤者是張志新(化名)和其女友劉穎吕朵,沒想到半個月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體窥突,經(jīng)...
    沈念sama閱讀 44,110評論 1 303
  • 正文 獨居荒郊野嶺守林人離奇死亡努溃,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 36,451評論 2 325
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了阻问。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片梧税。...
    茶點故事閱讀 38,577評論 1 340
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖称近,靈堂內(nèi)的尸體忽然破棺而出第队,到底是詐尸還是另有隱情,我是刑警寧澤刨秆,帶...
    沈念sama閱讀 34,258評論 4 328
  • 正文 年R本政府宣布凳谦,位于F島的核電站,受9級特大地震影響衡未,放射性物質(zhì)發(fā)生泄漏尸执。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 39,848評論 3 312
  • 文/蒙蒙 一缓醋、第九天 我趴在偏房一處隱蔽的房頂上張望如失。 院中可真熱鬧,春花似錦送粱、人聲如沸褪贵。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,726評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽竭鞍。三九已至板惑,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間偎快,已是汗流浹背冯乘。 一陣腳步聲響...
    開封第一講書人閱讀 31,952評論 1 264
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機(jī)就差點兒被人妖公主榨干…… 1. 我叫王不留晒夹,地道東北人裆馒。 一個月前我還...
    沈念sama閱讀 46,271評論 2 360
  • 正文 我出身青樓,卻偏偏與公主長得像丐怯,于是被迫代替她去往敵國和親喷好。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 43,452評論 2 348

推薦閱讀更多精彩內(nèi)容

  • Android Handler機(jī)制系列文章整體內(nèi)容如下: Android Handler機(jī)制1之ThreadAnd...
    隔壁老李頭閱讀 12,431評論 24 97
  • 一读跷、認(rèn)識多任務(wù)梗搅、多進(jìn)程、單線程效览、多線程 要認(rèn)識多線程就要從操作系統(tǒng)的原理說起无切。 以前古老的DOS操作系統(tǒng)(V 6....
    GT921閱讀 1,011評論 0 3
  • 本文主要講了java中多線程的使用方法、線程同步丐枉、線程數(shù)據(jù)傳遞哆键、線程狀態(tài)及相應(yīng)的一些線程函數(shù)用法、概述等瘦锹。 首先講...
    李欣陽閱讀 2,444評論 1 15
  • 關(guān)于測試用例 我比較贊同老徐的觀點籍嘹,思維導(dǎo)圖寫測試點(因為公司只有我一個測試)。測試用例我有段時間寫過但是效果很差...
    啟鳴Simon閱讀 111評論 2 1
  • 五月五日我過了我在高中的第一個生日弯院,當(dāng)然也是第一次和同學(xué)們一起辱士。小激動有一點,小開心有一點听绳,小失落有一點——這是一...
    lhy123丶閱讀 233評論 0 0