国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁(yè) > 學(xué)院 > 開(kāi)發(fā)設(shè)計(jì) > 正文

用多線程又有幾種常用的編程模型

2019-11-17 05:59:26
字體:
來(lái)源:轉(zhuǎn)載
供稿:網(wǎng)友

 

我這里可以大概給你介紹一下,但對(duì)于每一種編程模型要看具體的示例是什么,而且我不可能給你羅列所有的代碼,請(qǐng)諒解。

其實(shí)我們編程只要盡量站到比較高的層次,很多道理其實(shí)你會(huì)發(fā)現(xiàn)你已經(jīng)懂了。

就多線程來(lái)說(shuō),我們開(kāi)始設(shè)想只有兩個(gè)線程(>2時(shí)是不是算數(shù)學(xué)歸納法?)那么假如兩個(gè)獨(dú)立的線程會(huì)發(fā)生什么呢?

1。當(dāng)一個(gè)線程進(jìn)入moniter(也就是說(shuō)站用一個(gè)object),另一個(gè)線程只有等待或返回,而我們把返回就稱為一種模式,這種模式的英文是Balking。

2。這兩個(gè)線程可以是有序的執(zhí)行,而不是讓OS來(lái)調(diào)度,這時(shí)我們要用一個(gè)object來(lái)調(diào)度,這種模式稱為Scheduler。(這個(gè)詞及其含義其實(shí)OS中就有)。

3。假如這兩個(gè)線程同時(shí)讀一個(gè)資源,我們可以讓他們執(zhí)行,但假如同時(shí)寫的話,你閉著眼睛都會(huì)知道可能出現(xiàn)問(wèn)題,這時(shí)我們就要用另一種模式(Read/Write Lock)。

4。假如一個(gè)線程是為另一個(gè)線程服務(wù)的話,比如IE中負(fù)責(zé)數(shù)據(jù)傳輸?shù)木€程和界面顯示的線程,當(dāng)一個(gè)圖片沒(méi)有傳完時(shí),另一個(gè)線程就無(wú)法顯示,至少是部分沒(méi)有傳完。那么這時(shí)我們要用一個(gè)模式稱為生產(chǎn)者和消費(fèi)者,英文是PRoducer-Consumer。

5。兩個(gè)線程的消亡也可以不是完全又OS來(lái)控制的,這時(shí)我們需要給出一個(gè)條件,使得每個(gè)線程在符合條件是才消亡,也就是有序的消亡,我們稱為Two-Phase Termination。

那么有這5個(gè)線程模型,基本上可以用到大多數(shù)編程任務(wù)中。我需要指出的三點(diǎn)是:

1。從高層次上我們可以再驗(yàn)證是否含蓋了所有的情況。

2。其實(shí)模式不是完全固定的或者說(shuō)象定律一樣,而模式可以為不同的情況進(jìn)行適當(dāng) 的調(diào)整和組合,目的是為了簡(jiǎn)潔和高效。

3。學(xué)習(xí)模式是為了具備更好的分析問(wèn)題的能力。

而似乎這些來(lái)自西方的技術(shù),并且是目前的,我們有沒(méi)有呢?其實(shí)我個(gè)人有個(gè)大膽的推測(cè),我認(rèn)為我們祖先的《孫子兵法》就是很好設(shè)計(jì)模式,因?yàn)樗显O(shè)計(jì)模式需要的基本特征,就是在特定的條件下,用某種特定的方式合理且高效的解決問(wèn)題。只不過(guò)一是用在軍事上,二是完備性方面我們還沒(méi)研究。但我認(rèn)為我們至少?zèng)]有很好的擴(kuò)展和進(jìn)行類比式的應(yīng)用,否則今天可能是我們中國(guó)人教外國(guó)人什么是設(shè)計(jì)模式。

類比的方法實(shí)際上是發(fā)明或發(fā)現(xiàn)的常用方法。不知能否讓你感覺(jué)到其實(shí)外國(guó)的技術(shù)并不是那么的神秘,也許我們從自身的文化當(dāng)中挖掘出的東西太少了。
P.S.更深一步的研究你可以參考Doug Lea. <>.



發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 江山市| 嘉禾县| 共和县| 安平县| 永年县| 和平县| 湖南省| 苍南县| 和林格尔县| 万州区| 泾源县| 金溪县| 岗巴县| 咸丰县| 平江县| 永川市| 新泰市| 盘山县| 囊谦县| 定州市| 兴文县| 通州区| 兴宁市| 五寨县| 侯马市| 体育| 社会| 湟源县| 南平市| 天门市| 常宁市| 文登市| 塔河县| 景德镇市| 芒康县| 龙口市| 涪陵区| 谢通门县| 德清县| 金湖县| 台东市|