進程與線程

進程與多進程都是什么蚯姆?
->什么是進程五续?
進程是操作系統(tǒng)結(jié)構(gòu)的基礎(chǔ);是一個正在執(zhí)行的程序龄恋;計算機中正在運行的程序?qū)嵗砑荩豢梢苑峙浣o處理器并由處理器執(zhí)行的一個實體;由單一順序的執(zhí)行顯示郭毕,一個當(dāng)前狀態(tài)和一組相關(guān)的系統(tǒng)資源所描述的活動單元它碎。
就像一個車間。而線程就相當(dāng)于流水線
->什么是多進程显押?
進程是程序在計算機上的一次執(zhí)行活動扳肛。當(dāng)你運行一個程序,你就啟動了一個進程乘碑。顯然挖息,程序是死的(靜態(tài)的),進程是活的(動態(tài)的)兽肤。進程可以分為系統(tǒng)進程和用戶進程套腹。凡是用于完成操作系統(tǒng)的各種功能的進程就是系統(tǒng)進程绪抛,它們就是處于運行狀態(tài)下的操作系統(tǒng)本身;所有由用戶啟動的進程都是用戶進程。進程是操作系統(tǒng)進行資源分配的單位电禀。 進程又被細化為線程幢码,也就是一個進程下有多個能獨立運行的更小的單位。在同一個時間里尖飞,同一個計算機系統(tǒng)中如果允許兩個或兩個以上的進程處于運行狀態(tài)症副,這便是多任務(wù)。現(xiàn)代的操作系統(tǒng)幾乎都是多任務(wù)操作系統(tǒng)葫松,能夠同時管理多個進程的運行瓦糕。 多任務(wù)帶來的好處是明顯的,比如你可以邊聽mp3邊上網(wǎng)腋么,與此同時甚至可以將下載的文檔打印出來,而這些任務(wù)之間絲毫不會相互干擾亥揖。那么這里就涉及到并行的問題珊擂,俗話說,一心不能二用费变,這對計算機也一樣摧扇,原則上一個CPU只能分配給一個進程,以便運行這個進程挚歧。我們通常使用的計算機中只有一個CPU扛稽,也就是說只有一顆心,要讓它一心多用滑负,同時運行多個進程在张,就必須使用并發(fā)技術(shù)。實現(xiàn)并發(fā)技術(shù)相當(dāng)復(fù)雜矮慕,最容易理解的是“時間片輪轉(zhuǎn)進程調(diào)度算法”帮匾,它的思想簡單介紹如下:在操作系統(tǒng)的管理下,所有正在運行的進程輪流使用CPU痴鳄,每個進程允許占用CPU的時間非常短(比如10毫秒)瘟斜,這樣用戶根本感覺不出來 CPU是在輪流為多個進程服務(wù),就好象所有的進程都在不間斷地運行一樣痪寻。但實際上在任何一個時間內(nèi)有且僅有一個進程占有CPU螺句。 如果一臺計算機有多個CPU,情況就不同了橡类,如果進程數(shù)小于CPU數(shù)蛇尚,則不同的進程可以分配給不同的CPU來運行,這樣猫态,多個進程就是真正同時運行的佣蓉,這便是并行披摄。但如果進程數(shù)大于CPU數(shù),則仍然需要使用并發(fā)技術(shù)勇凭。 進行CPU分配是以線程為單位的疚膊,一個進程可能由多個線程組成,這時情況更加復(fù)雜虾标,但簡單地說寓盗,有如下關(guān)系:
總線程數(shù)<= CPU數(shù)量:并行運行
總線程數(shù)> CPU數(shù)量:并發(fā)運行
->進程如何創(chuàng)建?
->android:process

<service
     android:name=".service.Myservice"
     android:process="test"
     android:enabled="true"
     android:exported="true">

->進程的等級
->前臺進程
->可見進程
->服務(wù)進程
->后臺進程
->空進程

多進程
->什么情況下使用多進程璧函?
->如何使用多進程傀蚌?
->使用多進程需要注意哪些地方?
->進程與線程的區(qū)別
->初始化時進程
->進程間內(nèi)存不足的不可見性
多進程間的通信IPC
->IPC(interprocess communication)
->為什么需要蘸吓?
->內(nèi)存不共享
->如何通信:
->系統(tǒng)實現(xiàn)
->Messenger→利用Handler
->AIDL:Android Interface definition language
->.Create your.aidl file
線程與主線程
線程是一個單一的執(zhí)行序列善炫。單個線程中的代碼可以得到逐步執(zhí)行。每個Android應(yīng)用的運行都是從主線程開始的库继。然而箩艺,主線程并非如線程般的預(yù)定執(zhí)行序列。相反宪萄,它處于一個無限循環(huán)的運動狀態(tài)艺谆,等待著用戶或系統(tǒng)觸發(fā)事件的發(fā)生。事件觸發(fā)后拜英,主線程便負責(zé)執(zhí)行代碼静汤,以影響這些事件。如下圖:

一般線程與主線程.png

* 圖片來自于參考資料Android編程權(quán)威指南

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末居凶,一起剝皮案震驚了整個濱河市虫给,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌排监,老刑警劉巖狰右,帶你破解...
    沈念sama閱讀 211,042評論 6 490
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異舆床,居然都是意外死亡棋蚌,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 89,996評論 2 384
  • 文/潘曉璐 我一進店門挨队,熙熙樓的掌柜王于貴愁眉苦臉地迎上來谷暮,“玉大人,你說我怎么就攤上這事盛垦∈遥” “怎么了?”我有些...
    開封第一講書人閱讀 156,674評論 0 345
  • 文/不壞的土叔 我叫張陵腾夯,是天一觀的道長颊埃。 經(jīng)常有香客問我蔬充,道長,這世上最難降的妖魔是什么班利? 我笑而不...
    開封第一講書人閱讀 56,340評論 1 283
  • 正文 為了忘掉前任饥漫,我火速辦了婚禮,結(jié)果婚禮上罗标,老公的妹妹穿的比我還像新娘庸队。我一直安慰自己,他們只是感情好闯割,可當(dāng)我...
    茶點故事閱讀 65,404評論 5 384
  • 文/花漫 我一把揭開白布彻消。 她就那樣靜靜地躺著,像睡著了一般宙拉。 火紅的嫁衣襯著肌膚如雪宾尚。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 49,749評論 1 289
  • 那天鼓黔,我揣著相機與錄音央勒,去河邊找鬼。 笑死澳化,一個胖子當(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
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留输枯,地道東北人议泵。 一個月前我還...
    沈念sama閱讀 46,271評論 2 360
  • 正文 我出身青樓,卻偏偏與公主長得像桃熄,于是被迫代替她去往敵國和親先口。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 43,452評論 2 348

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

  • 11.1進程的概念 進程的定義 進程是指一個具有一定獨立功能的程序在一個數(shù)據(jù)集合上的一次動態(tài)執(zhí)行過程 精髓:正在執(zhí)...
    龜龜51閱讀 470評論 0 1
  • 處理器架構(gòu) 主要有兩種選擇:單個多核處理器和多個單核處理器瞳收。 核心 處理器核心是CPU重要組成部分碉京。處理器所有的計...
    獅_子歌歌閱讀 690評論 0 2
  • 進程 進程模型 操作系統(tǒng)中最核心的概念是進程:這是對正在運行程序的一個抽象。一個進程就是一個正在執(zhí)行程序的實例螟深,包...
    SeaRise閱讀 448評論 0 0
  • 又來到了一個老生常談的問題谐宙,應(yīng)用層軟件開發(fā)的程序員要不要了解和深入學(xué)習(xí)操作系統(tǒng)呢? 今天就這個問題開始界弧,來談?wù)劜?..
    tangsl閱讀 4,098評論 0 23
  • 石門星原則之前人人平等宿世戀愛性格 “ 石門星”通常是一個很有領(lǐng)導(dǎo)天分凡蜻、能冷靜思考、凡事有條有理重視原則的人夹纫。在愛...
    運安閣閣主閱讀 3,279評論 0 0