1.Fork-Join
什么是分而治之弄砍?
規(guī)模為N的問題裂逐,N<閾值腥放,直接解決,N>閾值铝量,將N分解為K個(gè)小規(guī)模子問題,子問題互相對(duì)立银亲,與原問題形式相同慢叨,將子問題的解合并得到原問題的解
動(dòng)態(tài)規(guī)范
工作密取
workStealing
2.常用的并發(fā)工具類
CountDownLatch
作用:是一組線程等待其他的線程完成工作以后在執(zhí)行,加強(qiáng)版join
await用來等待务蝠,countDown負(fù)責(zé)計(jì)數(shù)器的減一
CyclicBarrier
讓一組線程達(dá)到某個(gè)屏障拍谐,被阻塞,一直到組內(nèi)最后一個(gè)線程達(dá)到屏障時(shí)馏段,屏障開放轩拨,所有被阻塞的線程會(huì)繼續(xù)運(yùn)行CyclicBarrier(int parties)
CyclicBarrier(int parties, Runnable barrierAction),屏障開放毅弧,barrierAction定義的任務(wù)會(huì)執(zhí)行
CountDownLatch和CyclicBarrier辨析
1气嫁、countdownlatch放行由第三者控制,CyclicBarrier放行由一組線程本身控制
2够坐、countdownlatch放行條件》=線程數(shù)寸宵,CyclicBarrier放行條件=線程數(shù)
Semaphore
控制同時(shí)訪問某個(gè)特定資源的線程數(shù)量,用在流量控制
Exchange(比較少用)
兩個(gè)線程間的數(shù)據(jù)交換元咙,